4

Click here to load reader

Tcp

Embed Size (px)

DESCRIPTION

nb

Citation preview

Page 1: Tcp

Applications of TCP/IPThe TCP/IP protocol suite is the foundation of modern internetworking. For this reason, it has been used as the primary platform for the development and implementation of networking applications.Over the last few decade, as the global TCP/IP Internet has grown, hundreds of new applications been created. These programs enable a myriad of different tasks and functions to be accomplished, ranging from implementing essential business tasks to pure entertainment, by users who may be in the same room or on different continents.When it comes to TCP/IP applications, file and message transfer applications such as electronic mail, FTP and the World Wide Web get the most attention, because they are the ones used most often on modern internetworks. Another category of TCP/IP application protocols that is less-well-known is the group that allows users to access and use other computers directly over an internetwork, such as the public Internet. These applications are not often employed by end-users today but are important—both from a historical perspective, and because of their usefulness in certain circumstances, especially to network administrators.The TCP/IP suite of protocols is the set of protocols used to communicate across the internet. It is also widely used on many organizational networks due to its flexibility and wide array of functionality provided. Microsoft who had originally developed their own set of protocols now is more widely using TCP/IP, at first for transport and now to support other services.Following are a list of applications and application protocols.

Hypertext transferSimple mail transfer protocolsDynamic host configura_on protocolsDomain name systemsSimple network management protocolFile transfer protocolTrivial file transfer protocols

Hypertext transferHypertext transfer protocol is the protocol that enables the connection between a Web server and a client. Hypertext transfer protocol is an application layer protocol for distributing information in the World Wide Web. Hypertext transfer protocol is based on client server architecture. It operates on request response model.

Simple mail transfer protocolsEmail is one of the most widely used application service in the internet and widely used in business activities. Currently, the electronic mail standard for Internet is Simple Mail Transfer Protocol. STMP is an application level protocol that handles message service over TCP/IP network.

Dynamic host configuration protocols

Page 2: Tcp

Dynamic Host Configuration Protocol is used to dynamically assign TCP/IP configuration parameters to network devices. DHCP client communicates with a DHCP server to obtain IP addresses and related TCP/IP configuration information.

Domain name systemsIn data networks, devices are labelled with numeric IP addresses, so that they can participate in sending and receiving messages over the network which is difficult task, so domain names were created to convert the numerical address into simple, recognizable name.

File transfer protocolIt is another commonly used application layer protocol. FTP was developed to allow for file transfer between a client and server. An FTP client is an application that runs on a computer that is used to push and pull files from a server running the FTP daemon.

TCP/IP Application Example

1-A user connected to network (“Usama-PC”) makes a web access to a URL http://nust.edu.pk.

2-A Web browser runs an HTTP client program while a Web server runs an HTTP server program. Browser’s HTTP client sends an HTTP request to HTTP server. In return, HTTP server responds with HTTP response. Sender sends an HTTP Request and waits for HTTP response from the NUST server.

3-From HTTP to TCPAfterwards, HTTP client program establishes a TCP connection to the HTTP server at NUST. The HTTP server at NUST has a TCP server.

4-Resolving hostnames and port numbersSince TCP does not work with hostnames and also would not know how to find the HTTP server program at NUST, two things must happen:1. The name “nust.edu.pk” is converted into a 32-bit IP address.2. The HTTP server at NUST must be identified by a 16-bit port number.

5-Translating a hostname into an IP addressThe translation of the hostname nust.edu.pk into an IP address is done via Domain NameSystem (DNS).

6-Finding the port numberAs sender is sending an HTTP request, port number of receiver is understood, 80. Correct port number of receiver should be chosen accordingly.

Page 3: Tcp

7-Requesting a TCP ConnectionThe HTTP client at sender’s PC requests the TCP client to establish a connection by invoking the IP Protocol. The TCP client at sender’s PC sends a request to establish a connection to port 80 atNUST server.This is done by asking its local IP module to send a message to NUST webpage IP.

9-Sending the IP datagram to an IP routerSender can send the IP datagram directly to NUST only if it is on the same local network (“subnet”).But if sender and NUST are not on the same local network, sender’s IP datagram is send toDefault Gateway. The default gateway is an IP router.

10-Finding the MAC address of the gatewayTo send an IP datagram to NUST’s Default Gateway, sender puts the IP datagram in an Ethernet frame, and transmits the frame. At this point, Media Access Control (MAC) addresses (also called: physical address) are used to send data. The translation of addressed is performed via the Address Resolution Protocol (ARP). Thus data is transmitted from sender side.

11-Lookup of a MAC address of server

Data is routed among a number of routers before reaching Default Gateway at NUST. Now it is needed to find the MAC address of NUST’s server. Therefore, ARP is invoked, to translate the IP address of receiver’s server into MAC address. Thus, data arrives at NUST server.

12-Data has arrived at NUST ServerNUST receives the Ethernet frame. The payload of the Ethernet frame is an IP datagram which is passed to the IP protocol. The payload of the IP datagram is a TCP segment, which is passed to the TCP server. IP headers is now stripped off from data, because data message has now reached network layer of NUST server.

13-TCP Connection EstablishedAssuming data is not corrupted, it has reached TCP server at NUST. Now, a TCP connection is established.

14-HTTP ResponseData is forwarded to port 80, to get response to sender HTTP request.

Note: Only transmission of one packet from sender to receiver is shown and noise is ignored. In practical scenarios, multiple packers are sent.