Presentation is loading. Please wait.

Presentation is loading. Please wait.

Networking and Internetworking: Standards and Protocols i206 Fall 2010 John Chuang Some slides adapted from Coulouris, Dollimore and Kindberg.

Similar presentations


Presentation on theme: "Networking and Internetworking: Standards and Protocols i206 Fall 2010 John Chuang Some slides adapted from Coulouris, Dollimore and Kindberg."— Presentation transcript:

1 Networking and Internetworking: Standards and Protocols i206 Fall 2010 John Chuang Some slides adapted from Coulouris, Dollimore and Kindberg

2 John Chuang IS206 UC Berkeley2 Formal Definition of the Internet  Resolution passed by the Federal Networking Council October 24, 1995  "Internet" refers to the global information system that -- -(i) is logically linked together by a globally unique address space based on the Internet Protocol (IP) or its subsequent extensions/follow-ons; -(ii) is able to support communications using the Transmission Control Protocol/Internet Protocol (TCP/IP) suite or its subsequent extensions/follow-ons, and/or other IP-compatible protocols; and -(iii) provides, uses or makes accessible, either publicly or privately, high level services layered on the communications and related infrastructure described herein.

3 John Chuang IS206 UC Berkeley3 Outline  Last time: Network architecture -Layering and encapsulation  Today: Study specific protocols -Internet Protocol (IP) -Transmission Control Protocol (TCP) -User Datagram Protocol (UDP) HTTP message TCP header IP header Ethernet header Ethernet frame port TCP IP IP datagram/packet TCP segment HTTP message Adapted from Coulouris, Dollimore and Kindberg

4 John Chuang IS206 UC Berkeley4 Internetworking Standards  Internetworking standards set by IETF (Internet Engineering Task Force)  Documented as RFCs (Requests for Comment): -RFC 791: IP -RFC 793: TCP -RFC 2460: IPv6 -RFC 1034, 1035: DNS  http://www.ietf.org/rfc.html

5 John Chuang IS206 UC Berkeley5 Network Layer Appl Trans port Net work Link Net work Link Net work Link Appl Trans port Net work Link Host AHost BRouter 1Router 2 end-to-end point-to-point end-to-end

6 John Chuang IS206 UC Berkeley6 Internet Protocol (IP)  Two main functions of network layer: -Addressing -Packet switching (routing + packet forwarding)  Allow packets to traverse multiple networks  Deliver packet to specified destination host  Best effort: network delivers packets as reliably and as quickly as it can (but provides no guarantee of delivery) -Routers can and often do drop packets as part of normal operations

7 John Chuang IS206 UC Berkeley7 IP Packet Format (v4) Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address (32) Destination IP Address (32) Header Checksum (16)Protocol (8) Data (variable length) Header Data Field length in bits

8 John Chuang IS206 UC Berkeley8 IP Address  Every networked host is identified by its IP address  IP (version 4) addresses are 32 bits long -2 32 = 4,294,967,296 unique IP addresses  IPv6 addresses are 128 bits long -2 128 = 340,282,366,920,938,463,463,374,607,431,768,211,455 unique IP addresses

9 John Chuang IS206 UC Berkeley9 IP Address: Dotted Decimal Notation  Hostname: ischool.berkeley.edu  IP address: 128.32.226.87 128 32 226 87 01631824 1 0 0 0 0 0 0 00 0 1 0 0 0 0 01 1 1 0 0 0 1 00 1 0 1 0 1 1 1 Domain Name Service (DNS) performs translation

10 John Chuang IS206 UC Berkeley10 Packet Switching (Routing) Host AHost B 128.32.226.8712.2.14.60

11 John Chuang IS206 UC Berkeley11 Two Basic Functions in Packet Switching  Routing -Learn the best route to (or best next-hop for) any given destination -Routers exchange local link status or destination reachability information -Compute best path to destinations Algorithms for computing shortest paths (e.g., Dijkstra’s) Policies that reflect business agreements (use BGP) -Update the routing table  Packet forwarding -For each packet received on an incoming link, forward it to an outgoing link according to the routing table

12 John Chuang IS206 UC Berkeley12 Control Plane Destination Address Outgoing Link Outgoing links Routing table Packet Packet Switch in Action Cw.x.y.z Incoming links Data Plane Control plane of a router communicates with its counterparts at other routers using routing protocols (e.g., RIP, OSPF, BGP)

13 John Chuang IS206 UC Berkeley13 Transport Layer Appl Trans port Net work Link Net work Link Net work Link Appl Trans port Net work Link Host AHost BRouter 1Router 2 end-to-end point-to-point end-to-end

14 John Chuang IS206 UC Berkeley14 Transmission Control Protocol (TCP)  End-to-End reliable data transport  Addressing (using ports)

15 John Chuang IS206 UC Berkeley15 TCP Segment Format Bit 0Bit 31 Data (variable length) Header Data Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16) Options (if any)Padding Reserved (6) TCP Checksum (16)Urgent Pointer (16)

16 John Chuang IS206 UC Berkeley16 TCP Ports  TCP port number designates communicating processes on a single host Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16) Options (if any)Padding Bit 0Bit 31 Reserved (6) TCP Checksum (16)Urgent Pointer (16) message agreed port any port socket Internet address = 138.37.88.249Internet address = 138.37.94.248 other ports client server Source: Coulouris, Dollimore and Kindberg

17 John Chuang IS206 UC Berkeley17 Ports  The port numbers are divided into three ranges: -Well known ports (0-1023) -Registered ports (1024-49151) -Dynamic and/or private ports (49152 – 65535)  Some “well known ports” -ftp (21); ssh (22); telnet (23); smtp (25); finger (79); http (80) -assigned by Internet Assigned Numbers Authority (www.iana.org/numbers.html)

18 John Chuang IS206 UC Berkeley18 Reliable Delivery? Process AProcess B time Data Packet Loss Q: how to support reliable data transfer when underlying network is unreliable?

19 John Chuang IS206 UC Berkeley19 Reliable Delivery  Positive acknowledgment with retransmission  Sequence and acknowledgement numbers Options (if any) 0 3116 Padding Data TCP Header Source Port Number (16)Destination Port Number (16) Sequence Number (32) Acknowledgement Number (32) Hdr Len (4) Flags (6)Window Size (16)Reserved (6) TCP Checksum (16)Urgent Pointer (16)

20 John Chuang IS206 UC Berkeley20 Reliable Delivery  Each packet has a sequence number (SEQ) -SEQ represents byte offset with respect to initial SEQ -Duplicate packets can be detected and discarded -Out of order packets can be re-ordered  Each packet carries acknowledgment of received packet -ACK = sequence number of next byte expected by the receiver  Lost packet can be detected by missing ACK  Lost packet can be retransmitted after a timeout period

21 John Chuang IS206 UC Berkeley21 ACK and Packet Retransmission Process AProcess B time Data (Seq=x+1) Data (Ack=x+2) Data (Ack=x+3) Data (Seq=x+2) Timeout Data (Seq=x+2) IP loses packet TCP resends packet

22 John Chuang IS206 UC Berkeley22 ACK and Packet Retransmission Process AProcess B time Data (Seq=x+1) Data (Ack=x+2) Data (Ack=x+3) Data (Seq=x+2) Timeout Data (Seq=x+2) IP loses ACK TCP resends packet TCP resends ACK; drops duplicate Data (Ack=x+3)

23 John Chuang IS206 UC Berkeley23 User Datagram Protocol  Port numbers for addressing  No mechanism for reliable data transfer  Light-weight: -low overhead; no connection setup -used for real-time applications (don’t need retransmission) -non-standard protocols can be implemented on top of UDP 0 3116 Data UDP Header Source Port Number (16)Destination Port Number (16) UDP Checksum (16)Message Length (16)

24 John Chuang IS206 UC Berkeley24 Application Layer Appl Trans port Net work Link Net work Link Net work Link Appl Trans port Net work Link Host AHost BRouter 1Router 2 end-to-end point-to-point end-to-end

25 John Chuang IS206 UC Berkeley25 Hyper Text Transfer Protocol (HTTP) Request line GET /index.html HTTP/1.1 Host: www.ischool.berkeley.edu Blank line Request header HTTP message TCP header IP header Ethernet header Ethernet frame port TCP IP IP datagram/packet TCP segment HTTP message Adapted from Coulouris, Dollimore and Kindberg

26 John Chuang IS206 UC Berkeley26 Real-Time Transport Protocol (RTP)  Protocol for transport of real-time multi- media data -Sequence number and timestamp in RTP header -RTP messages encapsulated in UDP datagrams Source: Douglas Comer

27 John Chuang IS206 UC Berkeley27 Domain Name Service (DNS)  Routers and end-hosts use IP addresses -e.g., 128.32.226.87  Human beings remember hostnames -e.g., ischool.berkeley.edu  Need translation service!  Client sends DNS query message (hostname) to domain name server using UDP  Name server sends DNS response message (with resolved IP address) back to client


Download ppt "Networking and Internetworking: Standards and Protocols i206 Fall 2010 John Chuang Some slides adapted from Coulouris, Dollimore and Kindberg."

Similar presentations


Ads by Google