290 likes | 385 Views
EEC-484/584 Computer Networks. Lecture 10 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall). Outline. Manchester Encoding The Ethernet MAC Sublayer Protocol The Binary Exponential Backoff Algorithm
E N D
EEC-484/584Computer Networks Lecture 10 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall)
Outline • Manchester Encoding • The Ethernet MAC Sublayer Protocol • The Binary Exponential Backoff Algorithm • Switched Ethernet • ARP and DHCP • Reminder: Quiz 2 • Oct 19 Thursday 4-6pm (TTh Session) • Oct 23 Monday 2-4pm (MW Session) EEC-484/584: Computer Networks
Manchester Encoding • Binary encoding • Hard to distinguish 0 bit (0-volt) from idle (0-volt) • Requires clocks of all stations synchronized • Manchester encoding and differential Manchester encoding EEC-484/584: Computer Networks
Ethernet Frame Structure • Preamble: for clock synchronization • First 7 bytes with pattern 10101010, last byte with pattern 10101011 • The two consecutive 1’s indicate the start of a frame • How can the receiver tell the end of the frame? • No current on the wire >= 64 bytes EEC-484/584: Computer Networks
Ethernet Frame Structure • Destination address: 6 bytes (48 bits) • Highest order bit: 0 individual, 1 multicast; all 1’s broadcast • Frames received with non-matching destination address is discarded • Type: type of network layer protocol • Pad– used to produce valid frame >= 64 bytes • Checksum– 32-bit cyclic redundancy check EEC-484/584: Computer Networks
Minimum Frame Length • To ensure the sender can detect collision • All frames must take more than 2t to send so that transmission is still taking place when the noise burst gets back to the sender EEC-484/584: Computer Networks
Ethernet MAC Sublayer Protocol • Uses 1-persistent CSMA/CD • Binary exponential backoff • Provides unreliable connectionless service EEC-484/584: Computer Networks
Randomization and Binary Exponential Backoff • Time divided into slots • Length of slot = 2t = worst-case round-trip propagation time • To accommodate longest path, slot time = 512 bit times = 51.2 msec (10Mbps Ethernet) • Binary exponential backoff EEC-484/584: Computer Networks
Randomization and Binary Exponential Backoff • After 1st collision, station picks 0 or 1 at random, waits that number of slots and tries again • After 2nd collision, station picks 0,1,2,3 at random, waits that number of slots and tries again • …. • After i-th collision, station picks 0,1,…,2i-1 at random, … • If 10 <= i < 16, station picks 0,1,…,210-1 at random • If i=16, controller reports failure to computer EEC-484/584: Computer Networks
Ethernet Performance • Binary exponential backoff results in • Low delay when few stations collide • Reasonable delay for collision resolution when many stations collide • When other factors are fixed, channel efficiency decreases when • Network bandwidth increases • Cable length increases • Number of stations increases • Frame length decreases EEC-484/584: Computer Networks
Ethernet Performance • Efficiency of Ethernet at 10 Mbps with 512-bit slot times EEC-484/584: Computer Networks
Switched Ethernet • Switch – contains a high-speed backplane and room for typically 4 to 32 plug-in line cards, each containing 1-8 connectors • Possibly each card forms its own collision domain, or • Full-duplex operation if each input port is buffered EEC-484/584: Computer Networks
ARP – Address Resolution Protocol • How do IP addresses get mapped onto data link layer addresses, such as Ethernet? EEC-484/584: Computer Networks
ARP Optimization • ARP result is cached (step 5 in figure) • When A wants to communicate with B, A includes its IP-to-Ethernet mapping in the ARP packet so that B knows the mapping right away (step 3 in figure) • Have every machine broadcast its mapping when it boots, so that everyone else knows the mapping • To accommodate changes, entries in the ARP cache time out after a few minutes EEC-484/584: Computer Networks
ARP: How to Handle Remote Traffic • Proxy ARP– A router is configured to answer ARP requests on one of its networks for a host on another network EEC-484/584: Computer Networks
ARP – Exercise • Node 1 wants to send a packet to node 3, what will be returned by ARP? • Node 1 wants to send a packet to node 2, what will be returned by ARP? EEC-484/584: Computer Networks
32-bit Internet address ARP RARP 48-bit Ethernet address RARP –Reverse Address Resolution Protocol • RARP - Allows a newly-booted diskless-workstation (e.g., X terminal) to broadcast its Ethernet address and ask for its IP address • RARP server responds to a RARP request with the assigned IP address EEC-484/584: Computer Networks
Limitations of RARP • RARP uses a link-layer broadcast, RARP requests are not forwarded by routers, therefore, an RARP server must be present on every network • The only thing returned by the RARP server is the IP address EEC-484/584: Computer Networks
BOOTP – Bootstrap Protocol • BOOTP – uses UDP • A client broadcasts to 255.255.255.255 • The source IP address is set to 0.0.0.0 if client does not know its own IP address yet • Port number: 67 for server, 68 for client • BOOTP drawbacks • Requires manual configuration of tables mapping IP address to Ethernet address at the BOOTP server • Replaced by DHCP EEC-484/584: Computer Networks
Dynamic Host Configuration Protocol • Allow host to dynamicallyobtain its IP address from network server when it joins network • IP address assignment is lease-based (to cope with client failure, also enables reuse of addresses) • Can renew its lease on address in use • DHCP overview: • Host broadcasts “DHCP discover” msg • DHCP server responds with “DHCP offer” msg • Host requests IP address: “DHCP request” msg • DHCP server sends address: “DHCP ack” msg EEC-484/584: Computer Networks
E B A DHCP Client-Server Scenario 223.1.2.1 DHCP 223.1.1.1 server 223.1.1.2 223.1.2.9 223.1.1.4 223.1.2.2 arriving DHCP client needs address in this network 223.1.1.3 223.1.3.27 223.1.3.2 223.1.3.1 EEC-484/584: Computer Networks
DHCP discover src : 0.0.0.0, 68 dest.: 255.255.255.255,67 yiaddr: 0.0.0.0 transaction ID: 654 DHCP Client-Server Scenario arriving client DHCP server: 223.1.2.5 DHCP offer src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddr: 223.1.2.4 transaction ID: 654 Lifetime: 3600 secs DHCP request src: 0.0.0.0, 68 dest:: 255.255.255.255, 67 yiaddr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs time DHCP ACK src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs EEC-484/584: Computer Networks
DHCP Replay • A DHCP relay agentis can be configured on each LAN • The agent stores the IP address of the DHCP server and forward the request to the server EEC-484/584: Computer Networks
DHCP with Replay Agent • To find its IP address, a newly-booted machine broadcasts a DHCP Discover packet • The DHCP relay agent on its LAN receives all DHCP broadcasts • On receiving a DHCP Discover packet, the agent sends the packet as a unicast packet to the DHCP server, possibly on a distant network EEC-484/584: Computer Networks
Exercise • An IP packet to be transmitted by Ethernet is 60 bytes long, including all its headers. Is padding needed in the Ethernet frame, and if so, how many bytes? EEC-484/584: Computer Networks
Exercise • Consider building a CSMA/CD network running at 1 Gbps over a 1-km cable. The signal speed in the cable is 200,000 km/sec. What is the minimum frame size? EEC-484/584: Computer Networks
Exercise • A switch designed for use with fast Ethernet has a backplane that can move 10 Gbps. How many frames/sec can it handle? Assume there is an endless stream of 64-byte (512-bit) frames. EEC-484/584: Computer Networks
Exercise • How long does a station, s, have to wait in the worst case before it can start transmitting its frame over a LAN that uses the basic bit-map protocol? (Assume N stations, each frame is d bits) EEC-484/584: Computer Networks
Exercise • Six stations, A through F, communicate using the MACA protocol. Is it possible that two transmissions take place simultaneously? EEC-484/584: Computer Networks