Published on

1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 2. Network Protocols Dean (3 rd ), Chapter 4
  2. 3. Protocols <ul><li>Rules that govern network communications </li></ul><ul><li>Voluntary </li></ul><ul><li>Standards organizations: </li></ul><ul><ul><li>IETF: Internet Engineering Task Force </li></ul></ul><ul><ul><li>ICANN: Internet Corporation For Assigned Names and Numbers </li></ul></ul><ul><ul><li>ISO – Information Technology Committee </li></ul></ul>
  3. 4. TCP/IP <ul><li>Provides suite of conventions and utilities used on Internet </li></ul><ul><li>Transmission Control Protocol (TCP) </li></ul><ul><li>Internet Protocol (IP) </li></ul><ul><li>Governed by voluntary compliance with Requests for Comments (RFCs) </li></ul><ul><ul><li>RFC 1 issued 7-Apr-1969 on Host Software by Steve Crocker of UCLA </li></ul></ul><ul><ul><li>Latest RFC: 3994 Indication of Message Composition for Instant Messaging. H. Schulzrinne. January 2005. (Format: TXT=27472 bytes) (Status: PROPOSED STANDARD). </li></ul></ul><ul><ul><li>Not all RFCs are serious--include poetry (1121) and April fools jokes (1605, 2795) </li></ul></ul>
  4. 5. TCP/IP and OSI TCP/IP Model OSI Model Applications Presentation Session Transport Network Data Link Physical Transport —TCP, UDP Internet —IP, ARP, ICMP local network protocol Applications Telnet, FTP, TFTP, NTP, PING, BOOTP, DHCP, HTTP
  5. 6. TCP/IP Data Encapsulation <ul><li>TCP </li></ul><ul><ul><li>Segments and sequences data </li></ul></ul><ul><ul><li>Determines ports </li></ul></ul><ul><li>IP </li></ul><ul><ul><li>Packages segment in datagram </li></ul></ul><ul><ul><li>Determines logical addresses </li></ul></ul><ul><li>Local network protocol </li></ul><ul><ul><li>Creates transmission frame </li></ul></ul><ul><ul><li>Determines physical addresses </li></ul></ul>app TCP segment IP datagram LAN frame . . bits . . app TCP segment IP datagram LAN frame
  6. 7. TCP Segment <ul><li>Connection oriented: ports, handshaking </li></ul><ul><li>Provides reliable delivery of data: sequence, checksum, ack </li></ul><ul><li>Source port—port number at source node </li></ul><ul><li>Destination port—port number at destination node </li></ul><ul><li>Sequence number—segment’s position in stream of data </li></ul><ul><li>ACK number—used to acknowledge receipt of segment </li></ul><ul><li>Header length—number of 32-bit words in header </li></ul><ul><li>Reserved for later use—no used </li></ul><ul><li>Flags: Urgent, ACK, no buffering, reset, synchronization, last segment </li></ul><ul><li>Window size—receivers buffer size </li></ul><ul><li>Checksum—used to determine corruption </li></ul><ul><li>Urgent pointer—DoD field pointer </li></ul><ul><li>Options and padding—complete header </li></ul>Source Port Destination Port Sequence Number Acknowledgement Window Size Checksum Urgent pointer Padding Options Data flags Lng Rsv
  7. 8. Establishing TCP Connection (Handshaking) <ul><li>Request for connection </li></ul><ul><li>Acknowledge connection </li></ul><ul><li>Response </li></ul><ul><li>Connection established </li></ul>SYN SYN/ACK ACK
  8. 9. UDP <ul><li>User Datagram Protocol </li></ul><ul><li>Transport level protocol </li></ul><ul><ul><li>Alternative to TCP </li></ul></ul><ul><li>Connectionless </li></ul><ul><li>Does not assure delivery </li></ul><ul><li>Used for steaming media and other transfers where speed is more important than accuracy </li></ul>
  9. 10. IP Datagram <ul><li>Connectionless </li></ul><ul><li>Addressing and routing </li></ul><ul><li>Version—IPv4 or IPv6 </li></ul><ul><li>Header length </li></ul><ul><li>Services—priority info for router </li></ul><ul><li>Total length in bytes </li></ul><ul><li>Identification—message ID </li></ul><ul><li>Flags—is message fragment </li></ul><ul><li>Fragment offset </li></ul><ul><li>Time to live—number hops left </li></ul><ul><li>Protocol—TCP or UDP </li></ul><ul><li>Header checksum </li></ul><ul><li>Source IP address </li></ul><ul><li>Destination IP address </li></ul><ul><li>Options—routing/timing info </li></ul><ul><li>Padding—fill out multiple 32-bits </li></ul><ul><li>TCP (or UDP) segment </li></ul>Identification Total Length Header Checksum Source IP Address Destination IP Address Data – TCP or UDP Segment Services Padding Protocol TTL Options Flgs Vers IHL Frag. offset
  10. 11. ICMP <ul><li>Internet Control Message Protocol </li></ul><ul><li>Used to control message transfers </li></ul><ul><ul><li>Handshaking </li></ul></ul><ul><ul><li>Report success or failure of packet transfers </li></ul></ul><ul><ul><li>Announces TTL delivery errors </li></ul></ul><ul><ul><li>Troubleshooting information </li></ul></ul>
  11. 12. ARP <ul><li>Address Resolution Protocol </li></ul><ul><li>Internet (OSI Network) layer protocol </li></ul><ul><li>Maintains table of IP (logical) addresses and MAC (physical) addresses </li></ul><ul><li>Looks up MAC address using IP address </li></ul><ul><li>Reverse Address Resolution Protocol (RARP) looks up IP using MAC </li></ul>
  12. 13. IP Addressing <ul><li>Internet Protocol (IP) </li></ul><ul><li>Internet (OSI Network) layer protocol </li></ul><ul><li>Logical address used by routers </li></ul><ul><li>Each node must have unique IP address </li></ul><ul><li>Two versions </li></ul><ul><ul><li>32-bit (IPv4) </li></ul></ul><ul><ul><li>128-bit (IPv6) </li></ul></ul>
  13. 14. IPv4 Notation <ul><li>IP addresses are bit patterns </li></ul><ul><li>IPv4 uses hexadecimal or dot notation to specify four bytes in address </li></ul><ul><li>Dana’s IP address: </li></ul><ul><ul><li>86 72 8A 02 – hexadecimal </li></ul></ul><ul><ul><li> – dot notation </li></ul></ul><ul><li>“ nslookup” utility for looking up IPv4 address </li></ul>
  14. 15. Special IP Addresses <ul><li>Classes: </li></ul><ul><ul><li>A: 1-126--126 networks and 16,777,214 hosts </li></ul></ul><ul><ul><li>B: 128-191-- >16,000 networks and 65,534 hosts per network </li></ul></ul><ul><ul><li>C: 192-223-- >2,000,000 networks and 256 hosts per network </li></ul></ul><ul><li>IP addresses for private networks: </li></ul><ul><ul><li> - </li></ul></ul><ul><ul><li> - </li></ul></ul><ul><ul><li> - </li></ul></ul><ul><li>Reserved IP addresses </li></ul><ul><ul><li>Loopback: </li></ul></ul><ul><ul><li>Broadcast:, x.255.255.255, x.x.255.255, x.x.x.255 </li></ul></ul><ul><ul><li>Network use only: – usually DHCP failed to assign address </li></ul></ul><ul><ul><li>Network coordination: x.0.0.0, x.x.0.0, x.x.x.0 </li></ul></ul>
  15. 16. Subnet Mask <ul><li>IP address has network part and host part </li></ul><ul><li>Network part determined by subnet mask </li></ul><ul><ul><li>Class A: </li></ul></ul><ul><ul><li>Class B: </li></ul></ul><ul><ul><li>Class C: </li></ul></ul><ul><li>ipconfig (WinNT) or ifconfig (Unix) display subnet mask information </li></ul>
  16. 17. Assigning IP Addresses <ul><li>Each node must have unique IP address </li></ul><ul><li>Static IP assigned manually or with script </li></ul><ul><li>Dynamic IP assigned </li></ul><ul><ul><li>BOOTP—assigns based on MAC addresses </li></ul></ul><ul><ul><li>Dynamic Host Control Protocol (DHCP)—assigns next available </li></ul></ul>
  17. 18. Sockets and Ports <ul><li>Transport layer function </li></ul><ul><li>Port: number associated with process on machine </li></ul><ul><li>Socket: combination of IP address and port </li></ul><ul><ul><li>Dana telnet: </li></ul></ul><ul><ul><li>CBA Web: </li></ul></ul>
  18. 19. Commonly Known Ports Secure implementation of HTTP TCP HTTPS 444 Border Gateway Protocol TCP BGP 179 Simple Network Management Protocol UDP SNMP 161 Internet Message Access Protocol TCP IMAP 143 Post Office Protocol 3 TCP POP3 110 NIC Host Name Server TCP and UDP HOSTNAME 101 World Wide Web HTTP TCP and UDP HTTP 80 Trivial File Transfer Protocol UDP TFTP 69 Bootstrap Protocol Client UDP BOOTPC 68 Bootstrap Protocol Server UDP BOOTPS 67 Domain Name System TCP and UDP DNS 53 Simple Mail Transfer Protocol TCP SMTP 25 Telnet TCP TELNET 23 File transfer control TCP FTP 21 File transfer data TCP FTP-DATA 20 Echo TCP and UDP ECHO 7 Description Protocol Used Process Name Port Number
  19. 20. IPv6 <ul><li>128-bit (8-bytes) addresses </li></ul><ul><li>Increases number of IP addresses available </li></ul><ul><li>Uses colons (:) to separate bytes </li></ul><ul><li>Bytes specified using hexadecimal </li></ul><ul><li>“dig” utility for looking up addresses under IPv6 </li></ul>
  20. 21. DNS <ul><li>Domain Name System (DNS)—converts between FQN and IP address </li></ul><ul><li>Domain names—used instead of IP address </li></ul><ul><li>Fully qualified host name </li></ul><ul><ul><li>Network name: </li></ul></ul><ul><ul><li>Host name: dana </li></ul></ul><ul><ul><li>FQN: </li></ul></ul><ul><li>Top-level domains </li></ul><ul><ul><li>arpa, com, edu, gov, org, net, int, mil, biz, info, aero, coop, museum, name, pro </li></ul></ul><ul><ul><li>ICANN country codes </li></ul></ul>
  21. 22. Host Files vs DNS <ul><li>Host files were used when all nodes on Internet were known to all users of internet </li></ul><ul><li>DNS has servers dedicated </li></ul><ul><ul><li>Each top level domain </li></ul></ul><ul><ul><li>Each layer below top level domain </li></ul></ul><ul><ul><li>Layers know each other and immediate subordinates </li></ul></ul><ul><li>Example </li></ul><ul><ul><li>edu domain server knows nau </li></ul></ul><ul><ul><li>nau knows cba and </li></ul></ul><ul><ul><li>cba knows all cba and nodes </li></ul></ul>
  22. 23. TCP/IP Applications <ul><li>Telnet – remote terminal application </li></ul><ul><li>FTP – file transfer </li></ul><ul><li>TFTP – trivial file transfer </li></ul><ul><li>NTP – network time protocol </li></ul><ul><li>PING – Packet INternet Groper </li></ul>
  23. 24. Other Protocols <ul><li>IPX/SPX – Novell </li></ul><ul><li>NetBIOS and NetBEUI – Microsoft </li></ul><ul><li>WINS – Windows Internet Naming Service – handles NetBIOS name to IP address conversion </li></ul><ul><li>AppleTalk – Apple </li></ul>
  24. 25. Summary <ul><li>Protocols are rules that govern connections </li></ul><ul><li>TCP/IP suite of protocols used by Internet </li></ul><ul><li>TCP – Transport layer protocol that segments, sequences, and checks data and determines port to use </li></ul><ul><li>IP – Network layer protocol that does logical addressing and provides routing information </li></ul><ul><li>DNS – Domain name system that allows use of names rather than IP addresses </li></ul>
  25. 26. Questions?