Virtual Discussion
CSC490 :: Spring 2000

HOME READ/REPLY POST

FROM: Ahmed Mohamed
DATE: May 15, 2000
TIME: 16:42:11
REMOTE IP: 163.238.34.202
TCP/IP

Ahmed Mohamed

TCP/IP

The Internet has pushed its native TCP/IP protocol to the forefront of communications. In so doing, it is enabling the world to migrate to one global data communications system. TCP/IP is a robust and proven technology that was first tested in the early 1980s on ARPAnet, the U.S. military's Advanced Research Projects Agency network, the world's first packet-switched network. TCP/IP was designed as an open protocol that would enable all types of computers to transmit data to each other via a common communications language.

TCP/IP is a layered protocol similar to the ones used in all the other major networking architectures, including IBM's SNA, Windows' NetBIOS, Apple's AppleTalk, Novell's NetWare and Digital's DECnet. Layering means that after an application initiates the communications, the message (data) to be transmitted is passed through a number of stages, or layers, until it actually moves out onto the wire. The data is packaged with a different header at each layer. At the receiving end, the corresponding programs at each protocol layer unpacked the data, moving it "back up the stack" to the receiving application.

TCP/IP is composed of two parts: TCP (Transmission Control Protocol) and IP (Internet Protocol). TCP is a connection-oriented protocol that passes its data to IP, which is a connectionless one. TCP sets up a connection at both ends and guarantees reliable delivery of the full message sent. TCP tests for errors and requests retransmission if necessary, because IP does not.

An alternative protocol to TCP within the TCP/IP suite is UDP (User Datagram Protocol), which does not guarantee delivery. Like IP, it is also connectionless, but very useful for real time voice and video, where it doesn't matter if a few packets get lost, because it's too late to worry about it if they do.

Although TCP/IP has five layers, it is contrasted to the OSI (Open System Interconnection) seven-layer model, because OSI serves as a universal reference. Once thought to become the worldwide communications standard, OSI gave way to TCP/IP. However, it has become the teaching model for all communications networks.

Application Layer

The top layer of the protocol stack is the application layer. It refers to the programs that initiate the communications in the first place. TCP/IP includes several application layer protocols for mail, file transfer, remote access, authentication and name resolution. These protocols are embodied in programs that operate at the top layer just as any custom-made or packaged client/server application would. FTP, SMTP, Telnet, DNS and WINS some of the most widely known application protocols in the TCP/IP suite are FTP (File Transfer Protocol), SMTP (Simple Mail Transfer Protocol), Telnet, DNS (Domain Name System) and WINS (Windows Internet Name System).

IP Addresses All nodes in a TCP/IP network (clients, servers, routers, etc.) are assigned an "IP address," which is written as four numbers between dots, such as 193.4.64.01. The first part of the address is the network address, and the second part is the host address, also known as the netid and hosted. The network address allows TCP/IP packets to be routed to a different network. The number of bytes used for the netid versus the hosted varies according to a class system, and the first three bits of the first byte determine this ratio. Ports and Sockets A program identifies the program it wishes to communicate with by its socket, which is a combination of the server's IP address and the program's port. If it does not know the IP address, but knows the server by name, it uses a Domain Name System server (DNS server) to turn the name into the IP address. In Windows networks, a Windows Internet Name System server (WINS server) is used to map NetBIOS names, which are assigned to Windows machines, to IP addresses.

Presentation Layer

It is where data conversion (ASCII to EBCDIC, floating point to binary, etc.) and encryption/decryption is performed.

Session Layer

It is the Session Layer, which is performed in layer 4 in TCP/IP.

Transport Layer (TCP & UDP)

TCP establishes a connection at both ends, creating a "virtual connection" between the two machines before any data can be transmitted. Once established, both sides negotiate the maximum size of a TCP packet. Although TCP supports packets up to 4KB, in most cases, the size will be based on the underlying network, such as Ethernet, which can hold a maximum of 1518 bytes. Token Ring and FDDI support larger frames. TCP attaches a header onto the packet that contains the source and destination ports as ell as the sequence number of the packet, and it hands it over to IP along with the destination IP address. (A TCP packet is technically a Protocol Data Unit or segment, but is more often called a packet in common parlance.)

TCP uses a sliding window system, which is an adjustable buffer that allows a number of packets to be received before an acknowledgement is sent back. The size of he window can be changed as condition change, and TCP handles this "flow control" in real time. It also handles the retransmission of packets that have been received with errors.

UDP is an alternative to TCP that does not establish a connection, makes no guarantees and provides no flow control or error detection.

Network Layer (IP)

The IP protocol accepts the packets from TCP or UDP and prepares them for the data link protocol layer below by turning the IP addresses into physical station addresses (MAC addresses) and fragmenting the packets into the required frame size. IP uses the RP (Address Resolution Protocol) to obtain the MAC address; unless the address has already been ARP'd and is in the cache or there is a predefined configuration file that contains the addresses. An ARP request is broadcast onto the network and the machine with that IP address responds with its MAC address. If the target machine is in a different network or sub network than the source machine, IP supplies the target address of the default gateway, which is the router that can direct the packet to the appropriate network.

IP outputs packets called datagrams, and each datagram is prefixed with an IP header that contains source and destination IP addresses. If IP has to fragment the packet further, it creates multiple datagrams with sequence numbers so that they can be reassembled by IP on the other end. IP hands over each datagram to the data link layer below along with the MAC address (Ethernet address) of the target station or router.

IP supports a very useful feature called multicast, which allows one message to be delivered to multiple recipients. That means one IP data stream can travel a long, circuitous route before it is fanned out to all the target stations by the last router.

In a large enterprise or on the Internet, the IP protocol is used to route the packets from network to network. Routers contain routing tables that move the datagrams to the next "hop," which is either the destination network or another router. Datagrams can traverse several routers within an enterprise and dozens of routers over the Internet.

Routers that span different types of networks may have to fragment the datagrams even further if they direct them onto routes that use a smaller frame size than the incoming frame; for example, from FDDI to Ethernet.

Routers inspect only the network portion of the address and direct the incoming datagrams to the appropriate outgoing port for the next hop. Routers move datagrams from one hop to the next, as they are mostly aware of only the devices that are directly connected to them. Eventually, if the routing tables are correctly updated, the datagrams reach their destination. Routers use routing protocols to obtain current routing information about the networks and hosts that are directly connected to them.

Data Link Layer (Ethernet)

IP can connect directly to Ethernet, Token Ring, FDDI, ATM, SONET, X.25, and other networks. Since Ethernet is the most widely used data link protocol, or network access method, we use it in our example. Ethernet wraps the IP datagrams into its own frame format, which includes a header with source and destination MAC addresses (station addresses) and a trailer that contains checksum data.

Ethernet uses the CSMA/CD (carrier sense multiple access/collision detection) access method to broadcast the frames onto the wire. If two stations transmit at the same time, their frames collide, and they each back off and wait a random amount of time before trying again (in milliseconds). The data link layer is responsible for reliable node to node transmission. If an Ethernet frame is received with errors, Ethernet handles retransmission until it is received error free.

If IP datagrams start out in a LAN, go to a wide area network (WAN) and then back to an Ethernet again at the other side, the Ethernet frames were converted into WAN frames by a router and back again to Ethernet frames by the router at the other side.

The message starts out in one host, goes down the protocol stack, over the wire, and back up the stack on the receiving host. The counterpart protocols unpacked the frames, datagrams and packets and deliver the data to the application for processing. Although the terms are technically TCP segments, IP datagrams and Ethernet frames, they all ride over packet-switched networks and are frequently called packets at all stages.

What is TCP/IP? And What is the advantage of using it?


Re: TCP/IP
Posted by Bougataya Mehdi on May 30, 2000 at 12:30:38 at IP 172.147.168.64
The TCP/IP suite are the protocols used on the internet and most of the networks. By the way TCP was mostly written in C the father of C++. The TCP was first introduced by a scientist in 1961 but was refused until 1965 when the army started thinking of using it as a communication security during the cold war. Today the benefit of the TCP/IP is that it is implemented in the most of the OSs and that makes the life easy as if all the world was speaking one spoken language.

Re: TCP/IP
Posted by HOI CHUN YUNG on May 29, 2000 at 2:33:18 at IP 209.255.50.86
TCP/IP have been over a decade, it is too old and too much security bug. It can't make the perfect security solution in our world. Microsoft window 2000 look kind to give up TCP/IP step by step by another new newtork protocol

Re: TCP/IP
Posted by Bobbie Razo on May 28, 2000 at 18:29:29 at IP 216.192.103.36
To answer the first question: TCP/IP is basically is the communication language or protocol of the internet. The advantage of this is that it is the standard and most widely used type of protocol.

Re: TCP/IP Re: Kam Tsui
Posted by Han on May 23, 2000 at 23:53:15 at IP 216.254.68.20
Yes, the OSI reference model does contain 7 layers. The missing layer in Ahmed's presentation is the physical layer. In the physical layer, the packets are physically sent as electrical signals from its source to its destination. 
 
The OSI model has 7 layers, I though TCP/IP only has 4, but according to Ahmed, it has 5. Oh well, no one keeps trck of these things anyway :)

Re: TCP/IP
Posted by Joseph Fardella on May 23, 2000 at 23:44:17 at IP 63.23.128.165
TCP/IP is the industry standard, and it is because of this that it is so important. Using only one protocol allows for better interactions in your network. This standard has weathered the storm, and is still the one most accepted.

Re: TCP/IP
Posted by Kam Tsui on May 23, 2000 at 23:05:44 at IP 4.54.120.229
Having you answer your questions already in your article? By the way, you've mentioned OSI contains 7 layers, right? But I only find 6 here. Can someone tell me if i'm correct or not.

Re: TCP/IP
Posted by Dennis Healy on May 23, 2000 at 1:20:09 at IP 205.188.199.32
Anyone who has spent a few hours trying to configure a card or other device so that it works in a computer without conflicts can see the advantage of having a standard protocol.

Re: TCP/IP
Posted by mkhanum@hotmail.com on May 22, 2000 at 17:10:20 at IP 163.238.9.13
TCP/IP has become a common protocol to communicate on a network. This will make our life a little simplier because we could get information about it easily. If there is any problem we could get guides soon. TCP/IP also have many other advantages.

Re: TCP/IP
Posted by Han on May 18, 2000 at 14:48:58 at IP 198.83.28.35
The benefits of using TCP/IP is that it is a very common protocol, thus making it easy to implement. The disadvantages is that TCP/IP is slow and inefficient for anything other than an internet protocol (why would you need routing information on packets going across your LAN?)

Re: TCP/IP
Posted by Hector Blanco on May 17, 2000 at 14:29:37 at IP 163.238.244.230
The advantage of using TCP/IP is that it has become the most common protocol for computers to communicate on a network.

Being so this makes life somewhat easier because if that is the only protocol being used on your network then troubleshooting is made a little easier without having to worry about a whole cluster of protocols.

REPLY TO THIS ARTICLE

Reply Title:

From:

Reply:

 

Email Professor Klibaner with any class questions

Email Han with any questions/problems regarding this site

490.OS5.COM is a service provided by Rainkid Solutions

 

Email Professor Klibaner with any class questions

Email Han with any questions/problems regarding this site

490.OS5.COM is a service provided by Rainkid Solutions