TCP_IP_protocol suite

Views:
 
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

TCP/IP Protocol Suite : 

TCP/IP Protocol Suite SKGOCHHAYAT SDE,RTTC, BHUBANESWAR SKG /TCP-IP_Protocol Suite 1

TCP/IP : 

TCP/IP TCP/IP Internet or simply the Internet is a connection of diverse networks with different hardware technologies. Name TCP/IP is taken from the names of the one of the transport layer protocols (Transport Control Protocol) and the network layer protocol (Internet Protocol). Backbone of Internet is TCP/IP. SKG /TCP-IP_Protocol Suite 2

Internet : 

Internet SKG /TCP-IP_Protocol Suite 3 INTERNET

TCP/IP and OSI : 

TCP/IP and OSI OSI is made of seven layers. TCP/IP protocol is made of five layers. SKG /TCP-IP_Protocol Suite 4

Internet Services : 

Internet Services The Internet provides three sets of services: Network layer is a connectionless service called the Internet Protocol (IP). At transport layer, multiple transport layer services use the IP service. The highest level is the application services. SKG /TCP-IP_Protocol Suite 5

TCP Protocol Suite : 

TCP Protocol Suite All the protocols used by the internet are collectively described as the TCP/IP protocol suite and are standardised by the Internet Society (ISOC). TCP/IP Protocol Documents Data Encapsulation TCP-IP Protocol Suite TCP-IP Protocol Suite (IPv4 vs IPv6) SKG /TCP-IP_Protocol Suite 6

TCP/IP Protocol Documents : 

TCP/IP Protocol Documents TCP/IP technical documents are known as Request For Comments (RFCs). Request For Comments technically define a protocol for the internet and are informational. As TCP/IP evolves, so does the RFC. A major source for RFCs is the Internet Engineering Task Force and are accessible on site www.ietf.org SKG /TCP-IP_Protocol Suite 7

TCP/IP Protocol Documents.. : 

TCP/IP Protocol Documents.. Once issued, RFC do not change. Updated by new RFCs. RFCs can be obsoleted but their numbers are never used again. SKG /TCP-IP_Protocol Suite 8

Data Encapsulation : 

Data Encapsulation SKG /TCP-IP_Protocol Suite 9 Frame Head Trailer Frame Data Data Data TCP Header UDP Header TCP-UDP Data IP Header IP Datagram IP Header TCP-UDP Data Application TPT Layer NW Layer Data Link

TCP Header.. : 

TCP Header.. SKG /TCP-IP_Protocol Suite 10

TCP Header… : 

TCP Header… Source & Destination Port (16 Bits) Specifies the source and destination applications for the encapsulated data. Sequence Number (32 Bits) Helps in establishing TCP connections Helps in maintaining account of amount of data being transferred Identifies where the encapsulated data fits within a data stream from the sender Acknowledgement Number (32 Bits) Identifies the sequence number expected from the other end of data transmission unit SKG /TCP-IP_Protocol Suite 11

TCP Header…. : 

TCP Header…. Header Length (4 Bits) Sometimes called Data Offset. Indicates the length of header in 32-bit words. Identifies the beginning of data. Typical value is 5 unless there are options. Flags (6 Bits) Urgent (URG) Acknowledgement (ACK) Push (PSH) Reset (RST) Synchronise (SYN) Finish (FIN) SKG /TCP-IP_Protocol Suite 12

TCP Header….. : 

TCP Header….. Window Size (16 Bits) Indicates the size of the sliding window. Used for flow control. Specifies the number of octets, starting with the octet indicated by the acknowledgement number, that the sender of the segment will accept from its peer at the other end of the connection before the peer must stop transmitting and wait for an acknowledgement. Checksum(16 Bits) Used for error detection. Covers both header and the encapsulated data. SKG /TCP-IP_Protocol Suite 13

TCP Header…… : 

TCP Header…… Urgent Pointer(16 Bits) Used only when urgent flag is set. Points to the last octet of urgent data. Options One of the important options is MSS (Maximum Segment Size) Informs the receiver of the largest segment the sender is willing to accept, without causing fragmentation. Padding Consists of 1-3 octets, each equal to zero, to force the length of TCP header to be in multiples of four octets. SKG /TCP-IP_Protocol Suite 14

IP Header.. : 

IP Header.. SKG /TCP-IP_Protocol Suite 15

IP Header… : 

IP Header… Version (4 Bits) Identifies the IP version to which the packet belongs Header Length (4 Bits) Indicates the length of IP header in 32 bit words. Minimum length is 20 octets. Options may increase the size up to a maximum of 24 octets. Type of Service (8 Bits) Used for specifying special handling of packet. Has two sub-fields: Precedence TOS SKG /TCP-IP_Protocol Suite 16

IP Header…. : 

IP Header…. SKG /TCP-IP_Protocol Suite 17

IP Header….. : 

IP Header….. Total Length (16 Bits) Specifies total length of the packet, including header, in octets Largest decimal number =216= 65535, the maximum possible size of an IP packet is 65535 octets Total length - header length = Packet’s data payload Identification (16 Bits) Uniquely identifies each datagram sent by the host. Normally incremented by 1 for each datagram sent. SKG /TCP-IP_Protocol Suite 18

IP Header…… : 

IP Header…… Flags (3 Bits) First bit is not used. Second bit is Don’t Fragment (DF) bit Third bit if More Fragment (MF) bit. Fragment Offset (13 Bits) Used only in the cases when a datagram is fragmented on its way Specifies the offset, in units of eight octets, from the beginning of header to the beginning of the fragment. Time to live-TTL (8 Bits) Assigns a life to an IP datagram SKG /TCP-IP_Protocol Suite 19

IP Header……. : 

IP Header……. Protocol (8 Bits) Specifies the protocol that runs on the top of IP. TCP-6; EGP-8; UDP-17; OSPF-89 Header Checksum (16 Bits) Error detection field for IP header. As each router decrements the TTL, the checksum is calculated by each router. Source Address of Host (32 Bits) IP Address of the Originating Machine. Destination Address of Host (32 Bits) IP Address of the Destination Machine. SKG /TCP-IP_Protocol Suite 20

IP Header…….. : 

IP Header…….. Options Security: Specifies how secret the datagram is. Strict Source Routing(SSR): Gives the complete path to be followed. Loose Source Routing(LSR): Gives the list of routers not to be missed. Record Route: Makes each router to append its IP address. Time Stamp: Makes each router to append its IP address and time stamp. Padding Ensures that the header ends on a 32 bit boundary by adding zeros after the option field. SKG /TCP-IP_Protocol Suite 21

UDP Header.. : 

UDP Header.. SKG /TCP-IP_Protocol Suite 22

UDP Header... : 

UDP Header... Source Port (16 Bits) Identifies the sending process. Destination Port (16 Bits) Identifies the receiving process. Some fixed, pre-assigned port numbers used for services on the Internet. 7 for UDP; 69 for TFTP Message length (16 Bits) Indicates the size of the UDP header and its data in bytes. Minimum size is 8, if carries no data. Checksum (16 Bits) Covers the UDP header and UDP data. Optional; If not used, set to all zeros. SKG /TCP-IP_Protocol Suite 23

TCP/IP Protocol Suite.. : 

TCP/IP Protocol Suite.. SKG /TCP-IP_Protocol Suite 24 ICMP IGMP RARP ARP

Applications using TCP : 

Applications using TCP File Transfer Protocol (FTP) Provides the ability to upload and download files between hosts on the network. Simple Mail Transport Protocol (SMTP) Provides the ability to send mail between users on the network. TELNET Provides the ability to login into a remote host and administer the machine. Hyper Text Transfer Protocol (HTTP) Provides the ability to supply web pages between a browser and the server. SKG /TCP-IP_Protocol Suite 25

Applications using UDP : 

Applications using UDP Trivial File Transfer Protocol (TFTP) Provides simplex file transfer for network booting of devices. Network File System (NFS) Provides the ability for sharing directories between hosts on the network. Simple N/w Management Protocol (SNMP) Provides the ability to supply network management services on the network. Domain Name Service (DNS) Provides mapping between domain name and IP address and vice versa. SKG /TCP-IP_Protocol Suite 26

TCP Details : 

TCP Details Provides application programs access to the network using a reliable connection-oriented transport layer service. TCP is a byte oriented protocol i.e. every byte in each packet is assigned a sequence number. Sequence numbers are used to determine the ordering of data in the packet and to find the missing packets. Data stream handed over to TCP is called an unstructured stream. SKG /TCP-IP_Protocol Suite 27

TCP Details.. : 

TCP Details.. TCP divides this data stream into segments for transmission to remote network. TCP segment can be a control data or user data. Segment size can go up to 65535 bytes. To negotiate segment size TCP uses one of the options, MSS in TCP header, to indicate largest segment size it can receive. Sends and receives data reliably using sequence numbers and acknowledgements. SKG /TCP-IP_Protocol Suite 28

TCP Details... : 

TCP Details... Sender retains a copy of transmitted data until it receives an acknowledgment from the remote network. If no acknowledgment is received, within a specified time, the data is retransmitted by using adaptive retransmission algorithm. TCP records the time of the transmission and sequence number of the segment. TCP again records the time of the acknowledgement received. Using this delta, TCP builds a sample round-trip delay time and uses this to build an average time for a packet to be sent and to receive an acknowledgement. SKG /TCP-IP_Protocol Suite 29

TCP Details…. : 

TCP Details…. TCP will time out after a number of unsuccessful retransmissions. Establish a connection, 3 way handshake, between both ends before transmitting data. Once a connection is established TCP’s main job is to transfer data by maintaining the connection by exchanging sequence numbers and acknowledgements. Ends transmission by smoothly terminating the connection. SKG /TCP-IP_Protocol Suite 30

TCP Details….. : 

TCP Details….. Window size in TCP header, is used for flow control of data. Window size specifies the number of octets, starting with the octet indicated by the acknowledgement number, that the sender of the segment will accept from its peer at the other end of the connection before the peer must stop transmitting and wait for an acknowledgement. A default window size is 4096 bytes. Sliding window mechanism controls the flow of data. SKG /TCP-IP_Protocol Suite 31

Sliding Window-Flow Control : 

Sliding Window-Flow Control SKG /TCP-IP_Protocol Suite 32

TCP Details….. : 

TCP Details….. Can run number of applications using same transport by multiplexing through port numbers. Port Numbers TCP and UDP provides a concept of ports to identify a unique application in a machine. Source port is randomly generated by the source machine. 65536 (0-65535) port numbers can be defined. Theoretically it is possible to run 65535 simultaneous applications in a host. SKG /TCP-IP_Protocol Suite 33

TCP Details….. : 

TCP Details….. The first 1024 ports, port numbers 0-1023 known as well known port numbers, are assigned and are reserved for standard applications and are controlled by IANA. SKG /TCP-IP_Protocol Suite 34

TCP Details….. : 

TCP Details….. The remaining ports, 1024-65535, are dynamic and can be used freely by applications. Socket Connection Ports along with an IP address, known as socket connection, allow any application in any machine on an internet to be uniquely defined. Multiple applications can run simultaneously on a host by making use of separate socket connection for each application. SKG /TCP-IP_Protocol Suite 35

Socket Connection-Multiplexing : 

Socket Connection-Multiplexing SKG /TCP-IP_Protocol Suite 36

Socket Connection-Demultiplexing : 

Socket Connection-Demultiplexing SKG /TCP-IP_Protocol Suite 37

Three-Way-Handshake : 

Three-Way-Handshake Sequence and acknowledgement numbers in TCP Header, along with SYN and ACK flags help in establishing a TCP connection. Sequence number is incremented, in the system, every 4 microsecond. Sequence number indicates serial number of first byte, being sent, in the datagram sent. Acknowledgment number indicates the next byte (sequence) number the receiver expects to receive. SKG /TCP-IP_Protocol Suite 38

Three-Way-Handshake.. : 

Three-Way-Handshake.. SKG /TCP-IP_Protocol Suite 39

Data Transfer : 

Data Transfer For each byte of data sent the sequence number increments by one. Each sequence sent must be acknowledged. Multiple segments can be acknowledged. Acknowledgment number = Sequence number+Number of bytes successfully received+1. Process is full duplex for each end of communication maintains its own sequence numbers for the other side. SKG /TCP-IP_Protocol Suite 40

Sequence and Acknowledgements : 

Sequence and Acknowledgements SKG /TCP-IP_Protocol Suite 41

Closing a TCP Connection : 

Closing a TCP Connection SKG /TCP-IP_Protocol Suite 42 WAIT

Internet Protocol. : 

Internet Protocol. Provides best-effort or connectionless delivery service. No error checking or tracking. If reliability is important, IP must be paired with a reliable protocol like TCP. Transmits blocks of data called datagrams each of which is transported separately. Datagrams may travel along different routes and may arrive out of sequence or duplicated. SKG /TCP-IP_Protocol Suite 43

Internet Protocol.. : 

Internet Protocol.. Each datagram is identified by a identification number set by the source. Identification number is incremented by 1 for each datagram sent. Distribute network information via routing protocols like RIP, OSPF etc. Responsible for addressing: IPv4 and IPv6 IP is responsible for fragmentation of the IP datagrams, if the original packet length exceeds the MTU of a data link. SKG /TCP-IP_Protocol Suite 44

Internet Protocol… : 

Internet Protocol… Maximum Transmit Unit (MTU), is the size of the largest packet that can be transmitted or received through a data link. MTU includes IP header but does not include size of any link layer header or framing. Default MTU is 576 bytes, which can be handled by any network without fragmentation. The fragmentation occurs at the routers that can not send IP datagram to the next interface. SKG /TCP-IP_Protocol Suite 45

Internet Protocol…. : 

Internet Protocol…. Fragmentation is done in the multiple of 8 octets. Each fragment is marked, by router, with the same identifier number. Only the receiver host reassembles the datagram. The destination machine starts a reassembly timer for about 60-120 seconds. If not all fragments were received, then hosts discard the packets and sends a time exceeded ICMP message to the source machine. SKG /TCP-IP_Protocol Suite 46

Internet Protocol….. : 

Internet Protocol….. If a single fragment is lost during a transmission, the entire packet must be resent. 13 bit fragment offset field, DF and MF flags, in IPv4 header, takes care for ordered assembly of fragments at the destination host. SKG /TCP-IP_Protocol Suite 47

Fragmentation : 

Fragmentation SKG /TCP-IP_Protocol Suite 48

IPv4 Address : 

IPv4 Address SKG /TCP-IP_Protocol Suite 49 8 Bits 8 Bits 8 Bits 8 Bits 172 . 16 . 122 . 204

IPv4 Address Classes : 

IPv4 Address Classes SKG /TCP-IP_Protocol Suite 50 H

IPv6 Address : 

IPv6 Address An IPv6 address consists of 16 bytes (octets), making it 128 bits long. To make it more readable, IPv6 address protocol specifies hexadecimal colon notation. 128 bits are divided into 8 sections, each of 2 bytes length. Address consists of 32 hexadecimal digits, every four digits separated by a colon. SKG /TCP-IP_Protocol Suite 51 FDEC:BA98:0074:3210:000F:BBFF:0000:FFFF

User Datagram Protocol : 

User Datagram Protocol Provides unreliable connectionless service. Transfers data without establishing a session. Used for services that have an inbuilt reliability. Does not use end to end error checking and correction. Does not order the packets; may loose or duplicate a packet. Runs faster than TCP due to less overheads. SKG /TCP-IP_Protocol Suite 52

Underlying Networks Protocols : 

Underlying Networks Protocols Ethernet Token Ring FDDI Fiber Distributed Data Interface HDLC High-level Data Link Control Frame Relay PPP Point-to-Point Protocol ATM Asynchronous Transfer Mode SKG /TCP-IP_Protocol Suite 53

Internet Control Message Protocol : 

Internet Control Message Protocol Internet Control Message Protocol is a mechanism used by hosts and routers to send notification of datagram problems back to the sender. Sends error messages only to the source and not to intermediate routers. Sole function is to report problems, not to correct them. An important use of ICMP is echo/reply to test whether a destination is reachable and responding. SKG /TCP-IP_Protocol Suite 54

ICMP.. : 

ICMP.. Echo request/reply (PING; Packet INternet Gropher) Destination unreachable 0-Network unreachable 1-Host unreachable 2-Protocol unreachable 3-Port unreachable 4-Fragment needed but DF bit is set 5-Source route failed 6-Destination network unknown SKG /TCP-IP_Protocol Suite 55

ICMP… : 

ICMP… 7-Destination host unknown 8-Source host isolated 9-Communication with destination network administratively prohibited 10-Communication with destination host administratively prohibited 11-Network unreachable for type of service 12-Host unreachable for type of service Time exceeded message format 0-TTL exceeded 1-Fragment reassembly time exceeded SKG /TCP-IP_Protocol Suite 56

Internet Group Message Protocol : 

Internet Group Message Protocol Internet Group Message Protocol provides allows for multicast to operate on an internetwork. Multicast is one-to-many communication. A message sent can be simultaneously received by a group of hosts. Special type of Class-D IP addresses, starting with 1110, are reserved as multicast addresses. SKG /TCP-IP_Protocol Suite 57

Address Resolution Protocol : 

Address Resolution Protocol Address Resolution Protocol is used to translate 32 bits IP addresses to 48 bits Ethernet addresses. A host’s physical address is determined by broadcasting its IP address to all machines. The machine with matching IP address, in broadcast message, sends its hardware address to the machine originating broadcast. SKG /TCP-IP_Protocol Suite 58

ARP Operation : 

ARP Operation SKG /TCP-IP_Protocol Suite 59 Request Ignored Request Ignored

Reverse Address Resolution Protocol : 

Reverse Address Resolution Protocol Reverse Address Resolution Protocol is used to get the 32 bits Source IP address, knowing the 48 bits Hardware address. It is reverse of ARP, hence named Reverse Address Resolution Protocol. A diskless workstation broadcasts RARP-Request to find its IP Address at the time of boot up. SKG /TCP-IP_Protocol Suite 60

RARP Operation : 

RARP Operation SKG /TCP-IP_Protocol Suite 61

IPv4 Header : 

IPv4 Header SKG /TCP-IP_Protocol Suite 62

IPv6 Base Header : 

IPv6 Base Header SKG /TCP-IP_Protocol Suite 63

IPv4 vs IPv6 : 

IPv4 vs IPv6 Some independent protocols of version 4 are part of ICMPv6. RARP protocol is dropped from the suite. ARP and IGMP are combined with ICMPv6. SKG /TCP-IP_Protocol Suite 64