Illustrated TCP/IP by Matthew G. Naugle Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN: 0471196568 Pub Date: 11/01/98 Acknowledgments Part One - Introduction to the TCP/IP Protocol Chapter 1 - Transmission Control Protocol/Internet Protocol Chapter 2 - TCP/IP and Other Protocols Chapter 3 - The Origins of TCP/IP Chapter 4 - The World Wide Web Chapter 5 - Internet, Intranets, and Extranets Chapter 6 - Who Governs the Internet? Chapter 7 - The Governing Bodies of the Internet Chapter 8 - An Overall View of the Internet Chapter 9 - Internet Timeline Chapter 10 - Circuit and Packet Switching Chapter 11 - TCP/IP Protocol Documents Chapter 12 - Why Study the RFCs? Chapter 13 - Submitting an RFC Chapter 14 - RFC Updates Chapter 15 - RFC Format Chapter 16 - Other RFC Format Requirements Chapter 17 - Requirements in RFCs Chapter 18 - TCP/IP: The Protocols (covered in this book) and the OSI Model Chapter 19 - The Protocol Suite, According to This Book Chapter 20 - IP Overview Chapter 21 - IGPs, EGPs, and Routing Protocols Chapter 22 - Introduction to Routing Protocols (RIP) Chapter 23 - Introduction to Routing Protocols (OSPF) Chapter 24 - Other IP–Related Protocols Chapter 25 - Introduction to Transport Layer Protocols Chapter 26 - Introduction to the TCP/IP Standard Applications Chapter 27 - The Internet Protocol (IP) Chapter 28 - Connectionless, Best–Effort Delivery Service Chapter 29 - Data Encapsulation by Layer Chapter 30 - IPv4 Header Chapter 31 - Header Length, Service Type, and Total Length Fields
Chapter 32 - Fragmentation Chapter 33 - Time to Live (TTL) Chapter 34 - Protocol and Checksum Fields Chapter 35 - IP Options Field Chapter 36 - Source and Destination Address Fields Chapter 37 - The IP Address Scheme Chapter 38 - Classful Addressing - The Original Address Scheme Chapter 39 - IP Address Format Chapter 40 - Identifying a Class Chapter 41 - Class A Address Chapter 42 - Class B Address Chapter 43 - Class C Address Chapter 44 - Class D Address Chapter 45 - Classes A–D Review Chapter 46 - Subnetting Chapter 47 - Reasons for Subnetting Chapter 48 - Subnetting Examples (Classes A, B, and C) Chapter 49 - More Subnet Examples Chapter 50 - Physical and Logical Addresses Chapter 51 - Subnet Mask Template Chapter 52 - An Example Conversion Chapter 53 - Let’s Try One Chapter 54 - Subnet Bits Chapter 55 - Subnet Restrictions Chapter 56 - Subnet Mask Decisions Chapter 57 - Assigning More Than One Address to an Interface Chapter 58 - Classful IP Address Review Chapter 59 - IP Address Restrictions Chapter 60 - Address Allocation (The Internet Registry) Part Two - The Protocol Suite of TCP/IP Chapter 61 - Address Resolution Protocol (ARP) Chapter 62 - ARP Packet Format Chapter 63 - ARP Operation Chapter 64 - Rules for ARP Chapter 65 - Reverse Address Resolution Protocol (RARP) Chapter 66 - Proxy ARP Chapter 67 - What’s Wrong with the Address? Chapter 68 - Extending the Life of the IPv4 Address Space Chapter 69 - IP Address Assignment (The Old Method)
Chapter 70 - IP Addressing (The Old Method) Chapter 71 - Address Terms and Definitions Chapter 72 - Making the Address Efficient Chapter 73 - Masks and Prefixes Chapter 74 - Another Try Chapter 75 - Variable-Length Subnet Masks Chapter 76 - Longest Match Rule Chapter 77 - Example One: An ISP Address Assignment Chapter 78 - Example Two: Relaxing the Assignment Chapter 79 - Supernetting Exposed Chapter 80 - Route Aggregation Chapter 81 - Determining a Common Prefix Chapter 82 - Another Look at Route Aggregation Chapter 83 - Classless Inter-Domain Routing (CIDR) Chapter 84 - Classless Inter-Domain Routing (continued) Chapter 85 - Prefix Assignments Chapter 86 - A Look at the Addresses of an ISP Chapter 87 - A Graphic Look at the Example Chapter 88 - CIDR and VLSM Comparison Chapter 89 - Special Subnet Considerations Chapter 90 - Internet Assigned Numbers Authority Chapter 91 - Current IANA Address Block Assignments Chapter 92 - IP Routing Chapter 93 - Direct Routing Chapter 94 - Indirect Routing Chapter 95 - A Flowchart Chapter 96 - Routing Protocols - Distance Vector Chapter 97 - Updating Other Routers (Distance Vectors) Chapter 98 - A Bigger Update Chapter 99 - IP Routing Tables Chapter 100 - The Routing Information Protocol (Version 1) Chapter 101 - RIP Operational Types Chapter 102 - RIP Field Descriptions Chapter 103 - Default Router and Gateways Chapter 104 - Disadvantages of the RIPv1 Protocol Chapter 105 - Scaling with RIP Chapter 106 - Routers and Subnet Masks Chapter 107 - RIP Fixes Chapter 108 - Split Horizon Demonstrated Chapter 109 - RIP Version 2 Chapter 110 - Authentication
Chapter 111 - Subnet Mask Field Chapter 112 - Route Tag and Next-Hop Fields Chapter 113 - Multicast Support Chapter 114 - RIPv2 Compatibility with RIPv1 Chapter 115 - Open Shortest Path First (OSPF, RFC 2178) Chapter 116 - An OSPF Network Chapter 117 - A Routing Protocol Comparison Chapter 118 - OSPF Overview Chapter 119 - OSPF Media Support Chapter 120 - Router Types Chapter 121 - Router Names and Routing Methods Chapter 122 - Message Types Chapter 123 - Metrics (Cost) Chapter 124 - Generic Packet Format Chapter 125 - The Hello Protocol Chapter 126 - Adjacency Chapter 127 - Maintaining the Database Chapter 128 - OSPF Areas Chapter 129 - The Backbone Area Chapter 130 - The Area Border Router (ABR) Chapter 131 - Virtual Link Chapter 132 - Inter-Area Routing Chapter 133 - Information from Other Autonomous Systems Chapter 134 - Stub Areas Chapter 135 - RFCs Related to OSPF Chapter 136 - Static versus Dynamic Routing Chapter 137 - Remote Networks Chapter 138 - Datagram Routing Part Three - Internet Protocol Version 6 (IPv6) Chapter 139 - Introduction Chapter 140 - IPv6 Features Chapter 141 - From IPv4 to IPv6 Chapter 142 - IP Version Numbers According to RFC 1700 Chapter 143 - IPv6 Header Chapter 144 - IPv4 Options - A Review Chapter 145 - IPv4 and IPv6 Header Differences Chapter 146 - IPv6 Extension Headers Chapter 147 - Fragmentation Chapter 148 - Priority and Flow Label
Chapter 149 - IPv6 Addressing Chapter 150 - IPv6 Addressing Prefix Chapter 151 - 6Bone Test Addressing Chapter 152 - Provider-Based IPv6 Addressing Chapter 153 - Local-Use IPv6 Addressing Chapter 154 - IPv6 Addresses with Embedded IPv4 Addresses Chapter 155 - Unicast Addresses Chapter 156 - Autoconfiguration Chapter 157 - Neighbor Discovery Chapter 158 - Neighbor Discovery Types Chapter 159 - Neighbor Discovery and IPv4 Chapter 160 - Address Resolution Chapter 161 - Methods of Deploying IPv6 Chapter 162 - IPv6 Tunneling Introduction Chapter 163 - IPv6 Tunnel Addressing Chapter 164 - IPv6 and IPv4 Dual-Stack Strategy Chapter 165 - IPv6 Tunneling Chapter 166 - IPv6 Tunneling Chapter 167 - IPv6 Tunneling Flowchart 1 Chapter 168 - IPv6 Tunneling Flowchart 2 Chapter 169 - IPv6 Tunneling Flowchart 3 Chapter 170 - Anycast Addressing Chapter 171 - Multicasting for IPv6 Chapter 172 - IPv6 Routing Chapter 173 - RIPng Chapter 174 - ICMP Chapter 175 - ICMPv6 Encapsulation Chapter 176 - ICMPv6 and ICMPv4 Chapter 177 - ICMPv6 Error Messages Chapter 178 - ICMP Informational Messages Chapter 179 - ICMP and Neighbor Discovery Chapter 180 - ICMPv6 and Multicast Chapter 181 - IPv6 Cache Entries Chapter 182 - IPv6 Algorithm Chapter 183 - RFCs Related to IPv6 Part Four - Beyond the IP Layer Chapter 184 - Internet Control Message Protocol (ICMP) Chapter 185 - ICMP PING Chapter 186 - More ICMP Functions
Chapter 187 - User Datagram Protocol (UDP) Chapter 188 - Multiplexing and Demultiplexing Chapter 189 - Port Numbers Chapter 190 - Assigned, Registered, and Dynamic Port Numbers Chapter 191 - Dynamic Port Numbers Chapter 192 - Transmission Control Protocol (TCP) Chapter 193 - TCP Details Chapter 194 - TCP Fields Chapter 195 - TCP Services Chapter 196 - TCP Connection Establishment Chapter 197 - The Three-Way Handshake Chapter 198 - TCP Segment Chapter 199 - Sequence Numbers and Acknowledgments Chapter 200 - Sequence and Acknowledgment Example Chapter 201 - TCP Flow and Window Management Chapter 202 - TCP Retransmission Chapter 203 - Slow Start and Congestion Avoidance Chapter 204 - Termination Chapter 205 - Real-Time Protocol and the Real-Time Control Protocol Chapter 206 - Translators Chapter 207 - Mixers Chapter 208 - RTP Message Format Chapter 209 - Support for Time-Sensitive Apps Chapter 210 - Payload Type Chapter 211 - Providing Control for RTP Chapter 212 - Sender Reports Chapter 213 - Receiver Reports Chapter 214 - Source Description Packet Chapter 215 - Bye Message (Packet) Chapter 216 - Application-Specific Message Chapter 217 - Caveats Chapter 218 - RFCs Chapter 219 - Selected TCP/IP Applications Chapter 220 - TELNET Chapter 221 - TELNET Options Chapter 222 - File Transfer Protocol (FTP) Chapter 223 - FTP Commands Chapter 224 - FTP Data Transfer Chapter 225 - Trivial File Transfer Program (TFTP) Chapter 226 - Domain Name Service (DNS) Chapter 227 - DNS Structure
Chapter 228 - DNS Components Chapter 229 - Domain Structure Chapter 230 - Name Servers Chapter 231 - Query Function Types Chapter 232 - Example DNS Database Chapter 233 - SOA Record Chapter 234 - Name Server Records Chapter 235 - Address Records Chapter 236 - Mail Exchange Records (MX) Chapter 237 - Playing with the Database Chapter 238 - WHOIS Command Chapter 239 - More DNS Information Chapter 240 - Simple Mail Transfer Protocol (SMTP) Chapter 241 - SMTP Functions Chapter 242 - SMTP Flow Chapter 243 - DNS Interaction for Mail Chapter 244 - Post Office Protocol (POP) Chapter 245 - POP Operation Chapter 246 - SMTP, DNS, and POP Topology Part Five - IP Multicast Chapter 247 - Introduction Chapter 248 - Multicast Components Chapter 249 - Multicast Caveats Chapter 250 - Unicast (versus Multicast) Chapter 251 - Multicast (versus Unicast) Chapter 252 - Multicasting Type Chapter 253 - Addressing Type Review Chapter 254 - Introduction to IP Multicast Chapter 255 - Extensions to the IP Service Interface Chapter 256 - Receiving Multicast Datagrams Chapter 257 - Address Format Chapter 258 - Mapping to an Ethernet or IEEE 802.X MAC Address Chapter 259 - A Converted IP Multicast Address Chapter 260 - Protocols Chapter 261 - IGMP Header Chapter 262 - Router Functions of IGMP Chapter 263 - HostJoin Chapter 264 - Multicast Algorithms Chapter 265 - Leaves, Branches, and the Root
Chapter 266 - Spanning Tree and Flooding Chapter 267 - Reverse Path Forwarding (RPF) Chapter 268 - Pruning and Grafting (Definition) Chapter 269 - Reverse Path Multicasting (RPM) Chapter 270 - Core-Based Tree (CBT) Chapter 271 - Distance Vector Multicast Routing Protocol (DVMRP) Chapter 272 - DVMRP and IGMP Chapter 273 - Neighbor Discovery Chapter 274 - Route Reports Chapter 275 - Receiving a Route Report Chapter 276 - DVMRP Tables Chapter 277 - DVMRP Route Tables Chapter 278 - DVMRP Tunneling Chapter 279 - IP-in-IP Packet Format Chapter 280 - Protocol-Independent Multicast (PIM) Chapter 281 - PIM - Dense Mode (PIM-DM) Chapter 282 - PIM - Dense Mode Operation Chapter 283 - Adding Interfaces Chapter 284 - PIM - Sparse Mode (PIM-SM) Chapter 285 - Types of Multicast Trees Using PIM-SM Chapter 286 - Joining a Group Chapter 287 - A Host Sending to a Group Chapter 288 - Converting to a Source-Rooted Tree Chapter 289 - Rendezvous Points Chapter 290 - Comparison of Sparse- and Dense-Mode Protocols Chapter 291 - Multicast Open Shortest Path First (MOSPF) Chapter 292 - MOSPF Differences Chapter 293 - MOSPF Caveats Chapter 294 - Local-Group Database and the Group-Membership LSA Chapter 295 - Role of the DR and the BDR Chapter 296 - The Local-Group Database Chapter 297 - Operation Chapter 298 - Forwarding Cache Chapter 299 - Inter-Area MOSPF Routing Chapter 300 - Inter-Area Multicast Example Chapter 301 - Inter-Area Shortest-Path Tree Chapter 302 - Inter-Autonomous System Multicast Chapter 303 - Multicast Conclusion Chapter 304 - RFCs to Be Reviewed Part Six - BOOTP, DHCP, RSVP, and SNMP
Chapter 305 - Boot Protocol (BOOTP) Chapter 306 - BOOTP Operation Chapter 307 - BOOTP Field Definitions Chapter 308 - Client Side (BOOTREQUEST) Chapter 309 - Server Side Chapter 310 - Chicken-or-the-Egg? Dilemma Chapter 311 - BOOTP Relay Agents (or BOOTP Gateway) Chapter 312 - Dynamic Host Configuration Protocol (DHCP) Chapter 313 - DHCP Chapter 314 - IP Address Allocation Chapter 315 - DHCP Messages Chapter 316 - DHCP Operation Chapter 317 - DHCP Responses Chapter 318 - Releasing an IP Address Chapter 319 - DHCP Shortcuts Chapter 320 - Lease Duration Chapter 321 - Efficiencies Chapter 322 - Operational Tables Chapter 323 - RFCs to Be Reviewed Chapter 324 - Resource Reservation Protocol (RSVP) Chapter 325 - Alternatives Chapter 326 - Where It Will Be Used Chapter 327 - Operation Chapter 328 - Path Messages Chapter 329 - RSVP and Routers Chapter 330 - RSVP Requests Chapter 331 - Reservation Style Chapter 332 - RSVP Control Chapter 333 - Disabling a Reservation Chapter 334 - Handling Errors Chapter 335 - Merging Flowspecs Chapter 336 - A Simple Example Chapter 337 - Issues Chapter 338 - RSVP Summary Chapter 339 - Conclusion Chapter 340 - Simple Network Management Protocol (SNMP) Chapter 341 - SNMP Elements Chapter 342 - SNMP Manager Chapter 343 - Agent Chapter 344 - Management Information Base (MIB) Chapter 345 - Example MIB Entry
Chapter 346 - The Protocol of SNMP Chapter 347 - SNMP Encapsulation Index
Illustrated TCP/IP by Matthew G. Naugle Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN: 0471196568 Pub Date: 11/01/98 Previous Table of Contents Next Acknowledgments Two people made this book possible, Margaret Hendrey and Marjorie Spencer. I provided the information, but it was the continuous work of these two that produced this book. The amount of work it takes to put something like this together covers a long time and without these individuals’ assistance, this book would not have been the same. How to Use This Book With the amount of information we are forced to consume everyday, it would be nice to simply skim over a few sentences in a paragraph to get the key points of the topic. That is what the Illustrated Network books are about. Each page has a graphic and concise text that makes key points quick to learn and review. Like all books in the Illustrated Network series, this one is very detailed, yet it is written in way that makes it easy to comprehend. Eighty percent of what is commonly written about is filler information. What this book does is extract the twenty percent of the required information and places this information in an easy to use format. A similar format is used quite often with training material. As we all know, training must be done is a very structured and concise fashion and it must be delivered within a limited window of time. I have taken this quick learning concept further by using a combination of a text book and a training manual—producing the format of this book. This book is built specifically to be used as both a reference manual and a text book. There is no reason to read it from cover to cover. A topic can simply be turned to and quickly learned without having to read the whole book. The back of the book contains a CD. The graphics containing all the key points of the lessons are provided on this CD. You can use the graphics to create a customized training slide show, or use them in a classroom setting in conjunction with the book. The files are in a Microsoft PowerPoint presentation. The version of PowerPoint used is PowerPoint 97. Simply start your PowerPoint application and open one of the files on the CD corresponding to the information in the book.
This book is dedicated to a good friend of mine, for whom I continue to have great admiration. His tireless instruction of limitless boundaries will forever be remembered. His thoughts and ideas were given to me years ago, but I continue to use them successfully everyday. This book is dedicated to John J. (JJ) Anderson. Previous Table of Contents Next
Illustrated TCP/IP by Matthew G. Naugle Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN: 0471196568 Pub Date: 11/01/98 Previous Table of Contents Next Part One Introduction to the TCP/IP Protocol Chapter 1 Transmission Control Protocol/Internet Protocol The TCP/IP protocol suite is being used for communications, whether for voice, video, or data. There is a new service being brought out for voice over IP at a consumer cost of 5.5 cents per minute. Radio broadcasts are all over the Web. Video is coming, but the images are still shaky and must be buffered heavily before displaying on the monitor. However, give it time. All great things are refined by time, and applications over TCP/IP are no exception. Today, you will not find too many data communications installments that have not implemented or have not thought about the TCP/IP protocol. TCP/IP is becoming so common that it is not so much a matter of selecting the TCP/IP protocol stack as it is selecting applications that support it. Many users do not even know they are using the TCP/IP protocol. All they know is that they have a connection to the Web, which many people confuse with the Internet. We’ll get into the details of the differences later, but for now, you just need to understand that the Web is an application of the Internet. The Web uses the communications facilities of the Internet to provide for data flow between clients and servers. The Internet is not the Web and the Web is not the Internet. In the 1970s, everyone had some type of WANG machine in their office. In the 1980s and early 1990s, Novell’s NetWare applications consumed every office. Today, NetWare continues to dominate the network arena with its installed based of client/server network applications. However, the TCP/IP protocol and Internet browsers, such as NetScape’s Navigator and Microsoft’s Internet Explorer, and Web programming languages are combining to produce powerful corporate networks known as intranets, which mimic the facilities of the Internet but on a corporate scale. Intranets from different companies or simply different sites can communicate with each other through
the Internet. Consumers can access corporate intranets through an extranet, which is simply part of the corporate intranet that is available to the public. A great example of this is electronic commerce, which is what you use when you purchase something via the Internet. Directory services are provided through Domain Name Services (DNSs) Microsystems. File and print services are provided in many different ways. Finally, the ultimate in full connectivity is the Internet, which allows the corporate intranets to interconnect (within the same corporation or different corporations), providing global connectivity unmatched by any network application today. Therefore, within a short time (possibly 1998), very powerful applications will be built that utilize the TCP/IP software suite that will eventually rival NetWare at the core. Transmission Control Protocol/Internet Protocol • The protocol suite of TCP/IP is becoming the world’s most widely implemented network protocol. • 1970s—WANG • 1980s—SNA / Novell NetWare • 1990s—Novell and TCP/IP • TCP/IP combined with the Web browser is creating a new type of client/server network operating system. Introduction (continued) • TCP/IP is portable. • Runs on different computer operating systems • Addressing is handled on a global assignment • Novell is supporting TCP/IP. • Native TCP/IP support • IntraNetWare — (native support with release 5.0) • Microsoft is supporting TCP/IP. • Native • Client/server support with NT Another key factor of TCP/IP is extensibility. How many people can you name that use NetWare out of their house to allow for corporate connectivity or for commercial connectivity? Yes, programs such as remote node and remote control allow for NetWare clients to be accessed remotely, but not as seamlessly as with TCP/IP. TCP/IP allows you to move your workstation to any part of the network, including dialing in from any part of the world, and gain access to your network or another network. This
brings up another point: How many networks interact using NetWare? Theoretically, with TCP/IP you can access (excluding security mechanisms for now) any other TCP/IP network in the world from any point in the world. Addressing in TCP/IP is handled on a global scale to ensure uniqueness. Novell attempted global addressing but failed. Novell addresses are unique to each private installation, such as a single company, but are probably massively duplicated when taken as a whole (all installations). I know many installations with the Novell address of 1A somewhere in their network. Not everyone is going to renumber their network for uniqueness, but one trick is to match the 32–bit address of TCP/IP subnets to your Novell network. Convert each octet of the 32–bit address of TCP/IP into hex and use that as your NetWare address. Novell has entered the TCP/IP fray with its IntranetWare and support for native IP. IntraNetWare allows NetWare workstations to access TCP/IP resources. As of version 5.0, IntraNetWare is going away in name only and another version of NetWare is supposed to allow for NetWare to run directly on top of TCP/IP (this is known as native TCP/IP support). Microsoft and its emerging NT platform can also use TCP/IP as a network protocol. Two flavors are available: • Native TCP/IP and its applications (TELNET, FTP, etc.) • RFC compliant (RFC 1001 and 1002) TCP, which allows file and print service This enables the ability to telnet from an NT server or workstation and transfer files to that workstation or server using native TCP/IP. For file and print services in a TCP/IP environment, NT can be configured to use NetBIOS over TCP/IP. This enables NT to be involved in a routed network. NT can run many other protocols as well, but that is beyond the scope of this book. Introduction (continued) • Novell continues to dominate the client/server environment. • Mainframes are continually upgraded and being used more often. • Web interfaces to mainframe data • Some mainframe functions have been converted to Unix platforms • TCP/IP is an extensible protocol However, this does not mean that the other protocols (beyond TCP/IP) are being disbanded. Novell NetWare continues to run with the IPX protocol. As of this writing, NetWare is still the best constructed client server platform available. Tens of thousands of programs have been written directly to the NetWare interface and it is used in corporate networks, schools, and state, local, and federal governments. These users are not going to disconnect their NetWare networks and move to TCP/IP over
night. NetWare will be around for a great length of time, albeit in a diminishing role (start the arguments!). Most Fortune 1000 companies still depend on large mainframes for their day–to–day processing. The early 1990s and late 1980s were interesting times when many corporations were convinced that smaller Unix platforms using a distributed (client/server) architecture could replace their “antiquated” SNA networks. Wrong! Although some networks have converted to this architecture, many have not. There are many factors involved here. Time and money play an important role, but the rule continues to be, “if it ain’t broke, don’t fix it.” Huge applications such as the airline reservation system and the banking system are built using the SNA architecture, and even if a perfect solution is found, it will take years to convert these programs over to a new system. SNA is still being used, and I have even supported some sites that have reverted back to SNA mainframes, which were best suited to their particular situation. Today, there are Web servers that front IBM mainframes as well. IBM fully supports the TCP/IP protocols and there is a 3270 terminal emulation program known as TN3270 that allows for 3270 terminal emulation over the TCP/IP protocol. All of this is beyond the scope of this book, but remember, TCP/IP is very popular; however, protocol schemes are still in existence, still provide many benefits, and will continue to be used for years to come. From this, one would tend to think that the TCP/IP protocol was developed by a large–scale R&D center like that of IBM or DEC. It wasn’t. It was developed by a team of research–type people, comprised of college professors, graduate students, and undergraduate students from major universities. This should not be hard to believe. These individuals are the type who not only enjoy R&D work, but also believe that, when problems occur, the fun starts. Many years from now we will look back on the TCP/IP protocol as the protocol that provided the building blocks of future data communications. However, take notice: TCP/IP is an extensible protocol. It is fully functional today, but the work on the project continues. There are over 75 working groups of the Internet Engineering Task Force (IETF, explained in a moment), and as new needs continue to arise for the Internet, new working groups are formed and new protocols will emerge. In fact, the IP version of the existing protocol (known as IPv4, or IP version 4) will be replaced. IP version 6 (IPv6) is currently being implemented around the Internet. It will be a few years before a complete switchover takes place, but it is a great example of the extensible protocol. Previous Table of Contents Next
Illustrated TCP/IP by Matthew G. Naugle Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN: 0471196568 Pub Date: 11/01/98 Previous Table of Contents Next Chapter 2 TCP/IP and Other Protocols While the ARPAnet (and later the Internet) was being built, other protocols such as System Network Architecture (SNA) and protocols based on XNS (there are many proprietary versions) prevailed. Client/server applications that allowed for file and print services on personal computers were built using protocols based on XNS such as Novell NetWare (using IPX) and Banyan VINES. SNA was alive and well in the mainframe, and DECnet controlled the minicomputer marketplace. DEC also supported LAT (Local Area Transport) for terminal servers, which supported printers as well. DECnet started out before commercial Ethernet, and DEC’s minicomputers were connected together via local interfaces. Later, around 1982, DEC started to support Ethernet but still with the DECnet protocol. TCP/IP and Other Protocols • ARPAnet built at the same time as SNA and XNS networks. • XNS supported Novell, Banyan, and most other networking devices. • WAN access limited to X.25 and vendor proprietary solutions. • DEC continued to support DECnet/LAT. • LAN media as Ethernet, Token Ring, and FDDI. All of these protocols could run over Ethernet, Token Ring, or FDDI. In this respect, they did openly support the LAN protocol. However, disregarding the LAN protocol, these protocols were proprietary; in other words, vendor dependent. However, other protocols beyond TCP/IP are proprietary, and the internals of those systems are known only to their respective company owners. Users and network administrators were held to proprietary network environments and proprietary network applications, which deterred network development and enhancement in all corporate environments. Just because a vendor supported XNS, did not mean that it would interoperate with other vendors running XNS. Running XNS on one system did not guarantee compatibility of
communication to any other system except for the same vendor’s. This was good for the vendor, but it tended to lock users into one vendor. The only public Wide Area Network (WAN) access was X.25, and not everyone supported all features 100 percent, which lead to compatibility problems. All of us remember X.25 as a slow (primarily 9.6 kbps or 19.2 kbps) WAN access protocol. (This is not bashing the X.25 protocol. There were many valid reasons for running it at the slower network speeds, like error correction and control, and faster speeds such as T1 were not available for data connection transfers.) Alternatively, leased lines based on proprietary protocols of the network vendors were an option, but that only allowed the corporate networks to be interconnected. Ethernet was also available, but host interfaces and standardized network protocols were not readily available. The Internet started as a research facility and to link the government to the research facilities as well. It remained this way until about 1992. Only a handful of people knew about the Internet, and the Internet had nothing really to offer the commercial world. Engineers and scientists loved the Internet. No one knew of the advantages of the TCP/IP protocol. It was not until the GUI interface was developed that the Internet took off, and the TCP/IP protocol came with it. Therefore other protocols such as SNA and Novell NetWare sprouted in corporate America. Basically, there was no other choice. One of the better protocols was AppleTalk. Much like a Macintosh computer, it was very costly to implement. Seriously, I happen to like the AppleTalk protocol. AppleTalk was actually the software and LocalTalk was the hardware. It was Apple’s version of networking Mac computers, and, except for the wiring, it was free. The protocol was simple to install and use. It was built into every Mac. Cables were simply needed to hook up Apple computers to a simple network, and file and print services were built in as well. It was known as true peer–to–peer, for each workstation could see every other workstation, and each workstation could be a server and share any of its resources. Each node ran the name service. Each node picked its own physical address. Even dialing in to an AppleTalk network was easy using the AppleTalk Remote Access (ARA) protocol, and it made it look like you were a local node on the AppleTalk network. It soon became a very popular method of hooking together Mac computers into a network. However, AppleTalk was not envisioned as a protocol to handle large internets of Apple computers, and the inefficiencies of the protocol soon arose. It was about as close as you could come to a network operating system that allowed for simplicity and ingenuity. AppleTalk had one problem: scalability. Try building a large AppleTalk network, not an easy task, if not impossible. TCP/IP eliminated proprietary network operating systems; however, not intentionally. Again, it was built for a different purpose. TCP’s beginnings were rough (interoperability issues) and, in fact, TCP/IP was not the original protocol of the
ARPAnet. But the protocol stabilized and the interoperability between different computers and operating systems became a reality. For example, a DEC system running the VMS operating system combined with TCP/IP running as the network operating system can communicate with a Sun Microsystems’ Unix workstation running TCP/IP. The two systems can communicate by taking advantage of the protocol and the specific applications written for the protocol, primarily by being able to log on to one another and transfer files between the two across a network. Other Protocols (continued) • AppleTalk (software) and LocalTalk (hardware) were built into every Mac. • Very robust protocol but not scalable • Each node had a naming service • Network IDs were dynamic (seed router) • Node IDs were dynamic • Remote access was fully integrated as a remote node • TCP/IP eliminated the proliferation of proprietary network operating systems. • Any hardware and software platform could communicate • TCP/IP was completely open to any vendor to write code to. • TCP/IP is the protocol of choice for future network systems. When interconnecting computers and their operating systems with TCP/IP, it does not matter what the hardware architecture or the operating systems of the computers are. The protocol will allow any computer implementing it to communicate with another. The methods used to accomplish this are discussed in the following sections. Suffice it to say, the TCP/IP protocol is the protocol of choice for future network installations. Previous Table of Contents Next
Illustrated TCP/IP by Matthew G. Naugle Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN: 0471196568 Pub Date: 11/01/98 Previous Table of Contents Next Chapter 3 The Origins of TCP/IP The Origins of TCP/IP • A TCP/IP network is heterogeneous. • Popularity due to: • Protocol suite part of the Berkeley Unix operating system • College students worked with it and then took it to corporate America • In 1983, all government proposals required TCP/IP • The Web graphical user interface • TCP/IP has the ingenious ability to work on any operating platform. • TCP/IP has easy remote access capabilities. A TCP/IP network is generally a heterogeneous network, meaning there are many different types of network computing devices attached. The suite of protocols that encompass TCP/IP were originally designed to allow different types of computer systems to communicate as if they were the same system. It was developed by a project underwritten by an agency of the Department of Defense known as the Advanced Research Projects Agency (DARPA). There are many reasons why the early TCP/IP became popular, three of which are paramount. First, DARPA provided a grant to allow the protocol suite to become part of Berkeley’s Unix system. When TCP/IP was introduced to the commercial marketplace, Unix was always mentioned in every story about it. Berkeley Unix and TCP/IP became the standard operating system and protocol of choice for many major universities, where it was used with workstations in engineering and research environments. Second, in 1983, all U.S. government proposals that included networks mandated the TCP/IP protocol. (This was also the year that the ARPAnet was converted to the TCP/IP protocol. Conversions in those days happened within days. That was when the Internet
Comments 0
Loading comments...
Reply to Comment
Edit Comment