Not covered in Sp '99: WAP
alert_red.gifupdated.gifLAST UPDATE: 6/4/00alert_red.gif
This Learning Module is currently under REconstruction!
This is the most current version of Learning Module IV; however, the study guide needs to be written (for the independent learner) and
some of the content sections, links, and assessment tools need to be fine-tuned.  (Nothing is wrong, just imperfect!)
Note that the blinking text designates things that I need to work on; the material is not wrong, but can be improved.
(Don't worry, I don't like blinking text, either, so there will not be any in the finished product!)

LEARNING MODULE IV

AN OVERVIEW OF TCP/IP, PROTOCOLS, and the OSI MODEL

       Internet services, that we studied in Learning Module III,  are made available by running application programs that implement  TCP/IP (Transmission Control Protocol / Internet Protocol). TCP/IP can also be used as a communications protocol in the private networks called "intranets"and in their extensions called "extranets".   TCP/IP  is actually a "suite" of communication protocols (i.e. an integrated collection of protocols governing different aspects of communications) which are conventions or standards that, when implemented in an application, facilitate  the translation of digital data into and out of "packets" of binary data which can be routed over the Internet.  Much of the popularity of TCP/IP comes from the fact that it is a non-proprietary,platform-independent standard that makes it possible to transparently send transmissions between different kinds computers, different operating systems, and different networks.  Understanding TCP/IP really comes down to understanding the group of arcane protocols that make up the TCP/IP suite; in order to do this the OSI model of telecommunications is used to analyze TCP/IP in this learning module.   Independent learners should read the objectives and sequence of presentations, summary, then the Study Guide for this learning module.

The Objectives of this learning module are:

  1. to survey the fundamentals of the TCP/IP protocols,
  2. to relate the TCP/IP protocol suite to the OSI model of network communications,
  3. to relate the TCP/IP protocols to their associated (1) services and (2) application software, and
  4. to relate the TCP/IP protocols to the hardware (type of network node) that implements them.
TPQ 1: Rewrite the preceding objectives in terms of personal accomplishments to be attained after finishing the study of this learning module.

   The sequence of presentation of this learning module is:

  1. THE HISTORY OF TCP/IP
  2. THE FUNDAMENTALS OF TCP/IP
  3. THE OSI MODEL
  4. THE PROTOCOLS OF THE TCP/IP SUITE
  5. THE TCP/IP TRANSMISSION ARCHITECTURE (TCP/IP ARCHITECTURE)
  6. USING TCP/IP
  7. SUMMARY
1.  THE HISTORY OF TCP/IP:

        TCP/IP is an outgrowth of research funded by the U.S. government's Advanced Research Projects Agency (ARPA) in the 1970s. It was developed so that research networks around the world could be joined to form a virtual network known as an internetwork. The original Internet was formed by converting ARPAnet, an existing conglomeration of networks, over to TCP/IP.  That first Wide area network of networks would eventually become the backbone of today's Internet.

2.  THE FUNDAMENTALS OF TCP/IP

  1. TCP/IP is the suite of communication protocols that govern Internet telecommunications.
    1. In network context, a protocol is an standard, estabished by a computer standards group, that facilitates the exchange of data between two computers.  Examples of such standards group are:
      1. ANSI (American National Standards Institute) which sets standards for programming languages like C/C++ and for a wide range of technical areas, from electrical specifications to communications protocols, e.g. FDDI, the set of protocols for sending data over fiber optic cables.
      2. ISO (International standards group) which maintains the OSI model of communications (See section 3.) and
      3. Although no standards organization actually controls the Internet, two federations promote and supervise Internet protocols:
        1. The Internet Society, founded in 1992, is an international non-profit organization that acts as a "guide and conscience" for the Internet development.  The evolution of TCP/IP is overseen by theInternet Engineering Task Force (IETF) which is part of the Internet Architecture Board (IAB).  Other IAB activities include the Internet Research Task Force (IRTF), which works on network technology; the Internet Assigned Numbers Authority, which assigns IP addresses; and the Internet Registry, which manages the Domain Name System.  The Internet Society is based on Reston, Virginia and maintains a Web site at http://www.isoc.org.
        2. The World Wide Web Consortium (W3C) is an industry consortium which, in its own words "seeks to promote standards for the evolution of the Web and interoperability between WWW products by producing specifications and reference software. Although W3C is funded by industrial members, it is vendor-neutral, and its products are freely available to all.  The Consortium is international; jointly hosted by the MIT Laboratory for Computer Science in the United States and in Europe by INRIA who provide both local support and performing  core development. The W3C was initially established in collaboration with CERN, where the Web originated, and with support from DARPA and the European Commission." Organizations may apply for membership to the Consortium; individual membership isn't offered. The W3C has taken over what was formerly called the CERN httpd or Web server. The Web site maintained by W3C Web site is http://www.w3.org.
    2. In the more abstract context of information technology, a communication protocol is the special set of communication rules that both end points of a communications link must use in order for transmissions to occur. There are protocols between communicating applications within the same computer or between separate computers on a network.
    3. Protocols exist at several levels in a telecommunication connection. In section 6 of Learning Module II three categories of protocols were specified, basic protocols, modem protocols, and network protocols. TCP/IP is a ____________(1) protocol, in fact it is, by far, the most commonly used protocol in all categories. The other kinds of protocols are not discussed in this learning module.
    4. TCP/IP is called a protocol "suite" because the name refers to two separate protocols, TCP and IP, as well as several protocols that depend on TCP and IP for their performance.  The most important protocols of this suite include the following.  (These and others are presented in more detail in section 4.
      1. TCP/IP is really two interacting protocols, IP (See section 4.A), a connectionless protocol, that receives its data from TCP (See section 4.B), a connection-oriented protocol
      2. Personal computer users usually connect to the Internet through the Serial Line Internet Protocol (SLIP) or the Point-to-Point Protocol (PPP). These protocols encapsulate the IP packets so that they can be sent over a dial-up phone connection to an ISP's modem.
      3. Finally, TCP/IP is the essential foundation of transmission of data defined by application protocols like HTTP, FTP, SMTP, SNMP, and TELNET.
  2. TCP/IP uses the client/server model of communication in which a client application (e.g. a _____________(2)) requests and is provided a service (e.g. _____________(3)) by another computer (a server) in the network.
  3. TCP/IP communication is primarily point-to-point, meaning each communication is from one point, the _________(4), in the network to another point, the __________(5) and visa versa.  TCP/IP software makes each computer attached to the network seem like a next door neighbor to all the others; i.e. it hides the different interconnected network architectures and different computer systems, making everything seem like one big, homogeneous network of similar computers.
  4. The upper level (closer to the user) application protocols of the TCP/IP suite are called "connectionless" because each client request is considered a new request unrelated to any previous one (unlike ordinary phone conversations that require a dedicated connection for the call duration). Being connectionless frees network paths so that everyone can use them continuously. (Note that the TCP layer itself is not connectionless as far as any one message is concerned. Its connection remains in place until all packets in a message have been received.)
  5. The protocols of TCP/IP facilitate  "routable"  transmissions; this means that transmissions may be broken into packets which may be sent over different routes before arriving at the same destination where the packets are reassembled into the original message.
  6. TCP/IP allows standalone networks to be connected to the Internet or linked together to create private intranets.
SAQ 1: What is the difference between (a) OSI and ISO, and (b) TCP/IP, TCP, and IP?

3. THE OSI MODEL OF TELECOMMUNICATIONS (See Figure TCP/IP-1):

For a dynamic illustration of the OSI model try: http://ganges.cs.tcd.ie/4ba2/index.html

  1. OSI (Open Systems Interconnection) is a reference model for relating the common services of a telecommunications system.  It was defined by the CCITT (the international telecommunications standards-making body).  Although to date no network architecture implements the OSI model, it is the standard reference for discussing network design and comparing different network architectures.  It is commonly used as a guideline when new products are designed. In this presentation the OSI model is presented solely for the purposes of explaining the TCP/IP suite of protocols.  Figure TCP/IP-1 compares the protocols of the TCP/IP suite to their equivalent levels of the OSI Model.
  2. OSI is a layered theoretical model of telecommunications.  Its seven layers perform distinct communications functions that are described below.
    1. The application layer (layer 7): This is the layer that provides the services to the users of the OSI environment, i.e. this "service layer" is all the user sees; the activities of the lower layers are hidden behind the user-friendly application layer interface. Layer 7 identifies the sender an receiver as well as determining the quality of service, authentication, and privacy required. (This layer is not the application itself; the applications implement the protocols of this level.)  The hardware node that implements every layer is the gateway; this is diagrammed in Figure TCP/IP-5D, but it would probably be more clear if you read through the following sections before viewing that picture.
    2. The presentation layer (layer 6): This is a layer, usually part of an operating system, that standardizes everything so different applications can make use of the underlying communications.  Software at this level governs encryption and converts outgoing data (from the application layer format above to sessions layer format below) and  incoming data (visa versa).  The conversions provide a standardized application interface and common communications platform.
    3. The session layer (layer 5): This layer provides control over communications between applications. It establishes, manages, and terminates connections ("sessions") between cooperating applications.  The traffic light symbol in Figure TCP/IP-1 is a good reminder of the control functions of this layer!
    4. The transport layer (layer 4): This layer provides reliable, transparent transfer of data between end points (i.e. without regard to the route between these end points; that is the responsibility of the network layer below).  The transport layer manages the end-to-end error-checking and, if necessary, recovery. For example, this layer determines whether all packets have arrived and, if not, it sends a message to the sender asking for a retransmission.  Not surprisingly, in the TCP/IP suite, it is TCP (____________________(6) protocol) that corresponds to this level.
    5. The network layer (layer 3): This layer manages the routing of the data (sending it over the most efficient path through the network). It provides all the upper layers with independence from the data transmission and switching technologies of the network.  Not surprisingly, in the TCP/IP suite, it is IP (____________(7) protocol)  that corresponds to this level.  The hardware node associated with the network layer is (again not a surprise!) the router.
    6. The data-link layer (layer 2): This layer provides for the reliable transfer of data across the physical link. It provides error control, flow control, and synchronization between two adjacent nodes of a network without reference to the rest of the network.  It describes the specification of interface cards to specific types of networks, e.g. Ethernet, Token Ring, etc. TCP/IP protocols that occupy this layer are SLIP and PPP which allow modem/telephone connections to the Internet. The network node associated with the data link  layer is the bridge.
    7. The physical layer (layer 1): This layer conveys the unstructured bit stream through the actual cables of the network.  It deals with such parameters as signal voltage and bit duration.  It governs the mechanical, electrical, and procedural characteristics which establish, maintain, and deactivate physical links.  The network node associated with the physical layer is the repeater. Note that there is no TCP/IP protocol corresponding to this layer; this is where ATM, ADSL, ISDN, FDDI prolocols are found.
SAQ 2: Which OSI layer is associated with transmissions (a) between end points, (b) between adjacent nodes, and (c) throughout the path of nodes.
  1. By analyzing Figure TCP/IP-1 you will see the differences between TCP/IP and the OSI model:
    1. TCP/IP combines layers 5-7 of the OSI model into one layer, the application layer.  Thus TCP/IP applications like Netscape Navigator or WS-FTP integrate the services of the separate layers into one application layer.
    2. TCP/IP does not include layer 1 and only part of layer 2 (SLIP and PPP) of the OSI model; these are associated with networking hardware on which TCP/IP applications run.  Note, however, that protocols that deal with these layers may be bundled with TCP/IP stack in a commercial product like MacTCP.
SAQ 3: In an e-mail session over the Internet, which protocol (if any) is associated with (a) levels 5-7, (b) level 4, (c) level 3, (d) level 2, (e) level 1.
  1. Other concepts illustrated by the OSI Model:
    1. Figure TCP/IP-2 illustrates how both hardware and software (i.e. their protocols) may be associated with the OSI Model.
    2. Figure TCP/IP-3 shows how a block of data from a generic application (e.g. an e-mail message), as it is transmitted, has headers attached at every level of the model (top to bottom on the left of the figure).  These headers contain data that is necessary for the corresponding layer of the receiver node to interpret the incoming message. Finally, at the Data Link layer, a "frame" is created by  encapsulating the data unit with both a header and trailer; this entire frame becomes a stream of bits that is transmitted over the network channel. On the receiving computer, at each level of the model, the headers are stripped off and processed before the reduced data package is passed up to the next higher level.  Note that the term "packet" is not used in this illustration.  This is because "packet" is a generic term used to describe a unit of data at any layer of the OSI protocol model.
    3. Figure TCP/IP-4 illustrates the headers of a typical TCP/IP packet transmitted from a LAN.  Notice that there are no headers for the first three layers; the corresponding layer data is contained in the particular protocol (HTTP, FTP, Telnet, etc.) of the data being transmitted.  The figures shows that frames contain datagrams which contain segements which all encapsulate the application data. Any of these can be called packets, as explained the the preceding section.
    4. Figure TCP/IP-5 uses the OSI model to clarify the distinction between different kinds of network nodes (repeaters, bridges, routers, and gateways) as was promised in Section 7.1 of Learning Module II.  This figure illustrates each type of node with a single OSI protocol stack for such a node connecting terminals A and B, assuming no other nodes are present; of course, in practice there are numerous nodes between terminals each of which would be represented by its own protocol stack  The figure emphasizes that the significant feature of each type of node are in the software implementations of the protocol of the OSI layer it supports, i.e.
      1. repeater software does not use or modify any network protocol data; therefore it can only amplify and retransmit a signal so that it can travel further.
      2. bridge software uses only data link level protocols and thus understands and modifes only data link headers and trailers.  Thus it can only connect two networks of the same kind.
      3. a router, because it MUST handle data link protocols, is a bridge that also understands and modifes network layer headers and trailers.  Thus router software can negotiate a pathway through a network.
      4. a gateway is the most sophisticated kind of node.  Its software can manage communications between different kinds of applications on different kinds of networks.  Note, however, that the most significant difference between a gateway and a router is that the gateway adds the ability to handle Transport layer protocols to its router capability.  This is even more apparent in TCP/IP networks where there are are no headers for the upper three layers because they are built into the application data.  (See Figure TCP/IP-4 and its more detailed explanation in section 5.)
      It is important to recognize that it is the software, not the hardware, that distinguishes these different types of nodes; while a gateway may have specialized hardware that a client or server would not need, it is the software that implements transport layer protocol (e.g. TCP) that distinguishes it as a gateway.  In general, any computer can be any node
SAQ 4: From a protocol viewpoint, what are the (a) similarities and (b) differences between repeaters, bridges, routers, and gateways?

4. THE PROTOCOLS OF THE TCP/IP SUITE:

    TCP/IP makes it possible for two computers which are part of different networks, that are connected by routers or gateways, to exchange data. This complex process involves the collective, cooperative interactions of several protocols of the TCP/IP suite, depending on the particular service being used.  (An outstanding, detailed illustration of the TCP/IP protocols and network services in their associated OSI level (from http://www.whatis.com/osifig.htm).
 In the following presentation, we begin at the highest level with a client sending a message to a server.

  1. Application protocols occupy the highest protocol layers and  provide specific services.  Unfortunately the application protocols of the TCP/IP suite do not fit nicely into one of the OSI layers.  The WhatIs diagram (referenced above) places them in the sixth (presentation) layer, but adds the caveat that they overlap the adjacent layers.  I prefer to simply place them in the top three layers of the OSI model, i.e. ignore the distinction in these layers as done in Figure TCP/IP-1.
    1. FTP (File Transfer Protocol) permits files to be transferred from one computer to another using a TCP connection. A related but less common file-transfer protocol, Trivial File Transfer Protocol (TFTP), uses UDP rather than TCP to transfer file data.
    2. HTTP (hypertext transfer protocol) facilitates the viewing of multimedia files (text, graphic images, sound, video, etc.) from the World Wide Web. The essential  feature of HTTP is that it manages files that can contain hyperlinks to other files whose selection will produce additional transfer requests. To accomplish this, all Web servers contain an HTTP daemon, a program that is designed to wait for HTTP requests and handle them when they arrive.
    3. SMTP (Simple Mail Transfer Protocol) specifies the format of messages that an e-mail client on one computer can use to send (or receive) electronic mail to (from) an SMTP server on another computer.  Most e-mail clients use SMTP to send messages to servers; however, messages can be retrieved, by an e-mail client, using either POP or IMAP as well as SMTP. Therefore two of the three (POP or IMAP server and the SMTP server) must normally be specified when you configure the preferences of your e-mail application.
      1. POP (Post Office Protocol) is a protocol used to actually download e-mail from a message to a client where they can be accessed locally.  (As opposed to reading, manipulating, and sending them on the server.)  It provides an option to delete the messages from the server or to leave them.  (The latter is recommended if you access your e-mail from different clients; otherwise where the messages are can cause confusion!)  The version, POP3, can be used with or without SMTP.
      2. IMAP (Internet Message Access Protocol) is similar to POP3 but supports some additional features, e.g. IMAP4 allows you to search e-mail messages, on the server, for keywords.  The messages found can then be downloaded to the client, saving considerable time.   Also messages can be sorted into folders, mailboxes can be shared, and a user can access multiple mail servers. There is also better integration with MIME allowing the client to read only the headers in the message without having to wait for unwanted attached files to download.   Like POP, IMAP uses SMTP for communication between the e-mail client and server.
    4. SNMP(Simple Network Management Protocol) is the protocol governing network management and the monitoring of network devices and their operation. It is not necessarily limited to TCP/IP networks.
    5. NNTP(Network News Transfer Protocol) allows client software, called "newsreaders", to access, read, reply to, or post messages on Usenet newsgroup servers, the electronic equivalent of a bulletin board.  NNTP servers, typically provided by ISPs, store the Usenet messages and provide the software to manage them.  NNTP client software may is typically integrated into your browser, but it can be implemented in a separate newsreader, which you may prefer to your browser implementation. NNTP replaced the original Usenet protocol,UUCP (UNIX-to-UNIX Copy Protocol).NOTE: this was misleadingly omitted in the WhatIs diagram where they used "UseNet" (which is the service) instead of this protocol.
    6. Telnet is the TCP/IP protocol for remote logon.  Using Telnet, one can log on to a remote network computer as a regular user with whatever privileges that have been granted on the host computer.  Before the advent of the Web, Telnet was more frequently used, but now, with Web page "front ends" to services like e-mail servers, it is not needed.   For example, e-mail users used to have to actually log on to their e-mail server in order to use their account, but with a Web page front end, they can access their account via a browser.  Therefore, Telnet is now only needed by userswho want to use specific applications or data stored on a particular host computer.
    7. (6/4/00; from COSC 120) WAP (Wireless Application Protocol)  is actually a family of protocols, developed by Ericsson, Motorola, Nokia, and Unwired Planet,  that standardize communications between wireless devices, e.g. cellular telephones, PDAs (personal digital assistants), etc.  WAP facilitates Internet access, including e-mail, the World Wide Web, newsgroups, IRC, etc., on wireless devices.  The family of WAP protocols include:
      1. Wireless Application Environment (WAE)
      2. Wireless Session Layer (WSL)
      3. Wireless Transport Layer Security (WTLS)

      4. Wireless Transport Layer (WTP)
    NOTE:The WhatIs diagram includes two services (DNS and NSF which are not, themselves, protocols) in the same level as the preceding protocols.  Do not let this confuse you; all protocols, except Telnet, end in "P".
SAQ 5: What are the applications within Netscape Communicator suite that implement a particular protocol?
  1. TCP (Transfer Control Protocol) and UDP (User Datagram Protocol) facilitate the transmission of data streams (e.g. a complete e-mail message) between applications running on different hosts. They are connection-oriented protocols that manage the link between sender and receiver without reference to the network path between them (That is the job of _______(8)).
    1. TCP is a "reliable" protocol because it guarantees reliable delivery of the complete transmission by performing the error-checking and handshaking necessary to verify that data makes it to its destination intact.
      1. TCP divides data streams into blocks called TCP segments and transmits them using IP. In most cases, each TCP segment is sent in a single IP datagram. If necessary, however, TCP will split segments into multiple IP datagrams that are compatible with the physical data frames that carry bits and bytes between hosts on a network. Because IP doesn't guarantee that datagrams will be received in the same order in which they were sent, TCP reassembles TCP segments at the other end to form an uninterrupted data stream. FTP and telnet are two examples of popular TCP/IP applications that rely on TCP.
      2. TCP sets up a connection at both ends of a transmission and uses checksums to verify the data integrity and handshaking.  It also manages the division of the message into uniform packets.  These packets are independent and may be sent via different paths through a network; when they are received by the TCP layer of the receiving computer it reassembles the packets into the original message.
      3. With TCP, data is transmitted in packets called TCP segments, which contain TCP headers and data from a higher level application.
    2. UDP is an "unreliable" protocol because it doesn't guarantee that UDP packets will arrive in the order in which they were sent or even that they will arrive at all. If reliability is desired, it's up to the application to provide it.
      1. UDP is a simpler alternative to TCP, which is similar to but more primitive than TCP.   However, UDP does have a place in the TCP/IP suite, and a number of applications use it, e.g. SNMP (Simple Network Management Protocol) applications which are provided with most implementations of TCP/IP.
      2. Unlike TCP,  UDP does not divide its data packets nor does it provide sequencing of packets. This means that the application program that uses UDP must be able to make sure that the entire transmission has arrived and is in the right order.
      3. Network applications, like streaming audio or video, prefer UDP because TCP's error checking an retransmission would interrupt the real-time continuous flow that streaming technologies require. Also applications that need to save processing time because they have very small data units to exchange (and therefore very little message reassembling to do) may prefer UDP to TCP.
  2. IP (Internet Protocol), a lower-level protocol than TCP or UDP, governs the transmission of data packets throughout a computer network.
    1. IP is responsible for packet routing, i.e. selecting the path that data packets (called IP datagrams) will follow to efficiently reach their destination.  This involves utilizing routers to "hop" between different networks, i.e. separate networks are tied together by the routers thus forming the Internet or an intranet.
    2. IP manages the address part of each IP datagram insuring that it is sent to the correct destination. Each gateway or router the packet traverses checks this address an forwards the message along the most efficient route.  Connections in a TCP/IP network are specified by 32-bit IP addresses, which are represented, for humans, as dotted decimal numbers, expressed as four decimal numbers separated by periods.  Valid addresses thus range from 0.0.0.0 to 255.255.255.255, a total of about 4.3 billion addresses.  (For example, Tony's Office Mac is 131.118.83.3 and PC is 131.118.74.21).
    3. IP could be called "the most fundamental of the TCP/IP protocols" because every other protocol depends on it; it is the foundation of the TCP/IP stack(of protocols).
    4. Other network layer protocols, that play less visible but equally important roles in TCP/IP networks, include:
      1. ARP (Address Resolution Protocol): A protocol for converting an IP address to the actual address of the computer that is recognized in the local network. For example, if the computer is on an Ethernet LAN, the 32 bit IP address must be converted, a 48 bit Ethernet address. (The physical machine address is also known as a Media Access Control or MAC address.) A table, usually called the ARP cache, is used to maintain an association between each MAC address and its corresponding IP address. ARP provides the protocol rules for making this connection and providing address conversion in both directions.
      2. RARP (Reverse Address Resolution Protocol): It converts physical network addresses into IP addresses, i.e. it is the reverse of ________(9).
      3. ICMP (Internet Control Message Protocol) is an extension to the Internet Protocol (IP) that allows for the generation of error messages, test packets and informational messages related to IP.  ICMP is a "support protocol" that uses IP to communicate control and error information regarding IP packet transmissions.  It allows IP routers to send error and control messages to other IP routers and hosts. If a router is unable to forward an IP datagram, for example, it uses ICMP to inform the sender that there's a problem. ICMP messages travel in the data fields of IP datagrams and are a required part of all IP implementations.
    5. A rather advanced tutorial on IP addresses and routing is fournd at http://www.sangoma.com/fguide.htm.  (There is no need to read this unless you really want to know what all the numbers of an IP address mean.)
SAQ 6 : What are the significant (a) similarities and (b) differences between TCP and UDP?
  1. SLIP and PPP are two protocols that allow two computers to communicate using a serial interface, thus they correspond to the OSI layer 2. Both transmit IP packets over any serial link (dial up or private lines). They are most commonly used to allow modem/telephone connections to the Internet via an ISP but they can also be used to provide dial-up access between any two networks. For example, your ISP will provide you with a SLIP or PPP access so that you can connect to the ISP server which is actually part of the Internet. Amodem connection to the server via a serial line is typically slower than the parallel or multiplex lines (such as a T-1 line) of any network you use to access the Internet directly.
    1. SLIP (the older of the two protocols) was invented to be used for communication between two computers that can be previously configured for communication with each other.  Basically it encapsulates TCP/IP packets with headers and trailers, thus allowing them, for example, to be sent via a modem/POTS to your ISP.
    2. PPP (Point-to-Point Protocol) provides a similar facility to SLIP, but, being more sophisticated, has largely replaced the older protocol.  PPPworks with IP, butis designed to handleother protocols as well. Therefore, it is not necessarily part of the TCP/IP suite but is usually considered to be so.
      1. PPP is a full-duplex protocol that can be used on various physical media, including twisted pair, fiber optic lines, or satellite links.
      2. The advantages of PPP over SLIP include:
        1. PPP can handle synchronous as well as asynchronous communication,
        2. it can share a communications channel with other protocols,
        3. it provides Address Notification which allows a server to inform a dial-up client of its IP address for that link, and
        4. it has built-in error detection.
      Connected: An Internet Encyclopedia, has a more detailed (but still concise) description of PPP at
      http://cth.ccsl.com.np/CIE/Topics/65.htm.
  2. Other protocols are used by network host computers for exchanging router information. These include the Internet Control Message Protocol (ICMP), the Interior Gateway Protocol (IGP), and the Exterior Gateway Protocol (EGP). {MoveD from section 2.Dc.}
NOTE: There are no TCP/IP protocols that correspond to the OSI layer 1.  The TCP/IP suite must use separate layer 1 protocols such as ISDN, ADSL, ATM, etc. to provide the actual connection to the physical medium over which the message is to be transmitted.

SAQ 7: What are the most commonly used TCP/IP protocols?

5. THE TCP/IP TRANSMISSION SEQUENCE (TCP/IP ARCHITECTURE):

  1. FIGURE TCP/IP-1 illustrates TCP/IP's layered design, showing the relationships among its most important protocols.   FIGURE TCP/IP-3 illustrates how data, in preparation for transmission, is encapsulated at each TCP/IP layer with "headers" and "trailers" and, after reception, how these are stripped off, interpreted, and acted upon in the receiving computer.
    1. FIGURE TCP/IP-3 shows that, as a unit of data "flows downward" (a figure of speech) from a client application to the network interface card, it is encapsulated at each of a succession of TCP/IP layers until it forms a "packet" that can be successfully routed over the internet to its destination.
    2. At each layer, it is encapsulated with layer data required by the equivalent TCP/IP layer of the receiver computer.
    3. If the network being used is Ethernet, the Ethernet card creates a standard Ethernet frame that encapsulates the data unit and its TCP and IP headers.
    4. The operations of the layers of the destination computer on the Ethernet frame are the reverse of those of the sender.  The data link layer strips off the Ethernet headers and trailers and passes the IP datagram to the IP layer; it is passed up with headers removed and interpreted until  the original data is supplied to the receiving application which can then be processed.
  2. Example: To illustrate the process of sending a transmission via TCP/IP consider a Web transmission, i.e. a Web browser (the client) uses HTTP to request the download of a Web page (HTML data) from a Web server attached to the Internet.
    1. The browser first creates a virtual connection (called a "socket") to the server where the Web page is stored.
    2. To download a Web page, the client sends an HTTP GET command (a sequence of bits) to the server by writing the command to the socket. Figure TCP/IP-4 shows that:
      1. the socket software uses TCP to add a header to the GET command thus forming a TCP segment and
      2. the segment is "passed" to the IP module, which in turn adds its header forming an IP datagram
      3. the datagram is then "passed" on to the data link layer of the particular network (e.g. Ethernet) which ultimately encapsulates the datagram with a header and trailer forming a frame
      4. the frame is finally forwarded, over the network,  to the Web server.
    3. If the browser and the Web server are running on computers connected to different physical networks (as is usually the case), the set of frames that make up the whole message go from network to network until they reach the one to which the server is physically connected. The different frames can follow different routes over the network.  Ultimately, the frames are delivered to their destination and reassembled so that the Web server, which reads chunks of data by performing reads on its socket, sees a continuous stream of data.
    4. To the browser and the server, data written to the socket at one end shows up at the other end, as if by magic. However, underneath, all sorts of complex interactions have taken place to create an illusion of seamless data transfer across networks.
SAQ 8: List, in sequence, the TCP/IP headers and trailers that are added to an e-mail message
SAQ 9: In FIGURE TCP/IP-3, an HTTP header correspond to what?

6. USING TCP/IP:

  1. The TCP/IP software on a computer provides platform-specific implementations of TCP, IP, and other members of the TCP/IP suite. Modern PC operating systems such as Windows 95 have TCP/IP applications bundled within the O.S; older O.S.. like Windows3.1/DOS required that TCP/IP software be installed before Internet connections could be established.
  2. Modern software bundle application layer protocols with TCP/IP as a "suite"; since there is a hierarchy of these integrated protocols, they are  referred to, collectively, as the TCP/IP stack. The application layer protocols include (but are not limited to) the World Wide Web's Hypertext Transfer Protocol (HTTP), the File Transfer Protocol (FTP), Telnet (Telnet), and the Simple Mail Transfer Protocol (SMTP).
  3. When you given access to the Internet (e.g. by your ISP) you will be provided with software that incorporates TCP/IP applications.  Every other computer on the Internet (or corporate intranets or extranets) have similar TCP/IP stacks although they may come from different companies.  The operations of this stack of programs are completely invisible to the user.  In other words TCP/IP, as far as the user is concerned, simply turns innumerable small, unknown networks into one big one (the Internet or an intranet) and provides all the services needed for applications to communicate with each other over that network.
SAQs:

7. SUMMARY:

There is, obviously, much more to networking and TCP/IP, but it is only really important to remember the following:
  1. TCP/IP is a suite of communication protocols that permit physical networks to be joined together to form a network of networks. TCP/IP combines the individual networks to form a virtual network in which individual network nodes are identified by IP addresses instead by physical network addresses.
  2. TCP/IP has a multilayered architecture that clearly defines each protocol's services and responsibilities.
    1. TCP and UDP provide high-level data transmission services to network application programs; they encapsulate application data in segments and passes them to . . .
    2. IP which adds its data turning the segments into packets (or datagrams).  IP is responsible for routing the packets to their destination.
  3. Data moving between two applications running on Internet hosts travels down and up the hosts' TCP/IP stacks. Layer data added by the TCP/IP modules on the sending end is stripped off by the corresponding TCP/IP modules on the receiving end and used to re-create the original data.
  4. Internet services are actually provided by software that implements the application protocols of the TCP/IP suite.  These include:
    1. FTP for transferring files.
    2. HTTP for Web pages.
    3. SMTP for e-mail.
    4. SNMP for network management and the monitoring of network devices.
    5. NNTP for newgroups
    6. Telnet for remote logon.
    7. WAP for Internet access on wireless devices.
  5. All of this is invisible to the user!!
SAQ 10: In the summary of this learning module, what (of significance) has been omitted?