DOC PREVIEW
Berkeley ELENG 122 - Internet Control Protocols

This preview shows page 1-2-3-4-5-6 out of 19 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 19 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

11Internet Control ProtocolsEE 122: Intro to Communication NetworksFall 2006 (MW 4-5:30 in Donner 155)Vern PaxsonTAs: Dilip Antony Joseph and Sukun Kimhttp://inst.eecs.berkeley.edu/~ee122/Materials with thanks to Jennifer Rexford, Ion Stoica,and colleagues at Princeton and UC Berkeley2Announcements• Midterm grading 2/3s done, completed by Friday• I am away next week with limited email– ACM Internet Measurement Conference• Monday Oct 23:Dilip (Routing)• Dilip takes over the Weds section from Sukun onWeds Oct 25• Weds Oct 25: Prof. Scott Shenker (BGP)Except picturew/o the beard23Goals of Today’s Lecture• Bootstrapping an end host– Learning its own configuration parameters (DHCP)– Learning the link-layer addresses of other nodes (ARP)• Network control messages– Error/status reporting– Monitoring– Internet Control Message Protocol (ICMP)4How To Bootstrap an End Host?• What IP address the host should use?• What local DNS server to use?• How to send packets to remote destinations?• How to tell which destinations are local?• How do we address them using local network?hosthost DNS...hosthost DNS...router router1.2.3.0/235.6.7.0/241.2.3.7 1.2.3.156???1.2.3.19router35Avoiding Manual Configuration• Dynamic Host Configuration Protocol (DHCP)– End host learns how to send packets– Learn IP address, DNS servers, “gateway”, what’s local• Address Resolution Protocol (ARP)– For local destinations, learn mapping between IPaddress and MAC addresshosthost DNS...hosthost DNS...router router1.2.3.0/23255.255.254.05.6.7.0/241.2.3.7 1.2.3.1561.2.3.481.2.3.19router1A-2F-BB-76 -09-AD6Key Ideas in Both Protocols• Broadcasting: when in doubt, shout!– Broadcast query to all hosts in the local-area-network– … when you don’t know how to identify the right one• Caching: remember the past for a while– Store the information you learn to reduce overhead– Remember your own address & other host’s addresses• Soft state: eventually forget the past– Associate a time-to-live field with the information– … and either refresh or discard the information– Key for robustness in the face of unpredictable change47MAC Address vs. IP Address• MAC addresses– Hard-coded in read-only memory when adaptor is built– Like a social security number– Flat name space of 48 bits (e.g., 00-0E-9B-6E-49-76)– Portable, and can stay the same as the host moves– Used to get packet between interfaces on same network• IP addresses– Configured, or learned dynamically– Like a postal mailing address– Hierarchical name space of 32 bits (e.g., 12.178.66.9)– Not portable, and depends on where the host is attached– Used to get a packet to destination IP subnet8Bootstrapping Problem• Host doesn’t have an IP address yet– So, host doesn’t know what source address to use• Host doesn’t know who to ask for an IP address– So, host doesn’t know what destination address to use• Solution: shout to “discover” server that can help– Broadcast a server-discovery message (ff:ff:ff:ff:ff:ff)– Server(s) sends a reply offering an addresshosthost host...DHCP server59Response from the DHCP Server• DHCP “offer” message from the server– Configuration parameters (proposed IP address, mask,gateway router, DNS server, ...)– Lease time (duration the information remains valid)• Multiple servers may respond– Multiple servers on the same broadcast network– Each may respond with an offer• Accepting one of the offers– Client sends a DHCP “request” echoing the parameters– The DHCP server responds with an “ACK” to confirm– … and the other servers see they were not chosen10Dynamic Host Configuration ProtocolarrivingclientDHCP server203.1.2.5DHCP discover(broadcast)DHCP offerDHCP requestDHCP ACK(broadcast)611Deciding What IP Address to Offer• Server as centralized configuration database– Parameters might be statically configured in the server– E.g., a dedicated IP address for each MAC address– Avoids complexity of configuring hosts directly– … while still having a permanent IP address per host• Or, dynamic assignment of IP addresses– Server maintains a pool of available addresses– … and assigns them to hosts on demand– Leads to less configuration complexity– … and more efficient use of the pool of addresses– But: harder to track the same host over time12Soft State: Refresh or Forget• Why is a lease time necessary?– Client can release the IP address (DHCP RELEASE) E.g., “ipconfig /release” at the DOS prompt E.g., clean shutdown of the computer– But, host might not release the address E.g., the host crashes (blue screen of death!) E.g., buggy client software– And you don’t want the address to be allocated forever• Performance trade-offs– Short lease time: returns inactive addresses quickly– Long lease time: avoids overhead of frequent renewals &lessens frequency of lease being denied713So, Now the Host Knows Things• IP address• Mask• Gateway router• DNS server• And can send packets to other IP addresses• But: how to use the local network to do this?14Figuring Out Where To Send Locally• Two cases:– Destination is on the local network So need to address it directly– Destination is not local (“remote”) Need to figure out the first “hop” on the local network• Determining if it’s local: use the netmask– E.g., mask destination IP address w/ 255.255.254.0– Same value as when we mask our own address? Yes = local No = remotehosthost DNS...hosthost DNS...router router1.2.3.0/23255.255.254.05.6.7.0/241.2.3.7 1.2.3.1561.2.3.481.2.3.19router1A-2F-BB-76 -09-AD815Where To Send Locally, con’t• If it’s remote, look up first hop in (small) localrouting table– E.g., by default, route via 1.2.3.19– Now do to the local case but for 1.2.3.19 rather thanultimate destination IP address• For the local case, need to determine thedestination’s MAC addresshosthost DNS...hosthost DNS...router router1.2.3.0/23255.255.254.05.6.7.0/241.2.3.7 1.2.3.1561.2.3.481.2.3.19router1A-2F-BB-76 -09-AD16Sending Packets Over a Link• Adaptors only understand MAC addresses– Translate the destination IP address to MAC address– Encapsulate the IP packet inside a link-level framehosthost DNS...1.2.3.156router1.2.3.531.2.3.531.2.3.156IP packet9175 Minute BreakQuestions Before We Proceed?18Address Resolution Protocol• Every node maintains an ARP


View Full Document

Berkeley ELENG 122 - Internet Control Protocols

Documents in this Course
Lecture 6

Lecture 6

22 pages

Wireless

Wireless

16 pages

Links

Links

21 pages

Ethernet

Ethernet

10 pages

routing

routing

11 pages

Links

Links

7 pages

Switches

Switches

30 pages

Multicast

Multicast

36 pages

Switches

Switches

18 pages

Security

Security

16 pages

Switches

Switches

18 pages

Lecture 1

Lecture 1

56 pages

OPNET

OPNET

5 pages

Lecture 4

Lecture 4

16 pages

Ethernet

Ethernet

65 pages

Models

Models

30 pages

TCP

TCP

16 pages

Wireless

Wireless

48 pages

Load more
Download Internet Control Protocols
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Internet Control Protocols and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Internet Control Protocols 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?