IT 605 Computer Networks Networking Layers Prof . Anirudha Sahoo KReSIT IIT Bombay
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.1
Network Architecture (OSI)
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.2
TCP/IP Layers • Physical: – transmitting bits over a communication channel
• Data Link: – transforming the raw physical layer into a ‘link’ for the higher layer
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.3
TCP/IP Layers • Network: – addressing and routing of packets
• Transport: – end-to-end connection characteristics
• Application: – “application” protocols
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.4
Physical Layer • Moves bits from one end to other • Bandwidth, latency, S/N ratio
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.5
Bandwidth • Amount of data that can be transmitted per unit time – expressed in cycles per second, or Hertz (Hz) for analog devices – expressed in bits per second (bps) for digital devices – KB = 2^10 bytes; Mbps = 10^6 bps
• Link v/s End-to-End Introduction
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
1.6
Bandwidth v/s bit width
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.7
Latency (delay) • Time it takes to send message from point A to point B – Latency = Propagation + Transmit + Queue – Propagation = Distance / SpeedOfLight – Transmit = Size / Bandwidth
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.8
Latency • Queuing not relevant for direct links • Bandwidth not relevant if Size = 1 bit • Process-to-process latency includes software overhead • Software overhead can dominate when Distance is small • RTT: round-trip time Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.9
Delay X Bandwidth Product • Relative importance of bandwidth and delay • Small message: 1ms vs 100ms dominates 1Mbps vs 100Mbps • Large message: 1Mbps vs 100Mbps dominates 1ms vs 100ms
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.10
Delay X Bandwidth Product
• 100ms RTT and 45Mbps Bandwidth = 560 KB of data Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.11
Application requirements • Best-effort: FTP • Bandwidth guarantees: Video – burst versus peak rate
• Delay guarantees: voice – jitter: variance in latency (interpacket gap)
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.12
Physical Layer – Media dependent components • Copper: Coaxial/Twisted Pair – Typically upto 100 Mbps
• Fibre: Single/Multi Mode – Can transmit in Gigabits/second
• Satellite: – Channels of 64 kbps, 128 kbps
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.13
Physical Layer – Media independent • Connectors: Interface between equipment and link • Control, clock and ground signals • Protocols: – RS 232 (20 kbps, 10 ft) – RS 449 (2 Mbps, 60 ft)
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.14
Data Link Layer Controls a single physical link Service interface to network layer
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.15
Data link functions • Grouping of bits into frames • Dealing with transmission errors • Regulating the flow of frames – so that slow receivers are not swamped by fast senders
• Regulating multiple access to the medium Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.16
Data Link Layer – Logical link control (LLC) • Framing (start and stop) • Error Detection • Error Correction • Optimal Use of Links (Sliding Window Protocol) – Examples: HDLC, LAP-B, LAP-D
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.17
Data Link Layer – Medium access control (MAC) • Multiple Access Protocols • Channel Allocation • Contention, Reservation, Round-robin • Examples: Ethernet (IEEE 802.3), Token Ring (802.5)
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.18
Example: Ethernet (IEEE 802.3) • Ethernet Address (48 bits) – Example: 08:00:0D:01:74:71
• Ethernet Frame Format
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.19
Ethernet medium access: CSMA/CD • Carrier Sense: – Wait for medium to become free
• Multiple Access: – Persistent: Transmit immediately – Non-Persistent: Wait for some (random) time, before trying!
• Collision Detection Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.20
Collision detection and resolution • Listen while transmitting – Minimum transmission time is needed to detect collision
• Upon collision detection – Backoff and retry – Binary exponential backoff
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.21
Network Layer • Need for network layer – All machines are not Ethernet!
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.22
Network layer goals • Hide type of subnet (Ethernet, Token Ring, FDDI ... ) • Hide topology of subnets • Uniform addressing scheme • Routing
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.23
Network layer functions • Internetworking – uniform addressing scheme
• Routing – choice of appropriate paths from source to destination
• Congestion Control – avoid overload on links/routers Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.24
Network layer services • Provides an end to end logical link – Provides packet forwarding, segmentation and reassembly
• end system needs to only format a packet with the specified header and destination address
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.25
Connection Oriented service • Network layer at sender must set up a connection to its peer at the receiver • Negotiation about parameters, quality, and costing are possible • Avoids having to choose routes on a per packet basis
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.26
Connectionless service • Network layer at sender simply puts the packet on the outgoing link without connection setup • Intermediate nodes use routing tables to deliver the packet to destination • Avoids connection setup delays
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.27
Example: Internet Protocol (IP) • Provides connectionless packet delivery and “best-effort” quality of service • No assurance that the packet will reach intended destination
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.28
IP addresses • Logical address at network layer • 32 bit address space – Network number, Host number
• Machines on the same "network" have same network number • One address per interface
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.29
IP address notation • Dotted decimal notation – 144.16.111.2 (Class B) – 202.54.44.120 (Class C) – Special Conventions • All 0s -- this host • All 1s -- limited broadcast (localnet)
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.30
IP address issues • Inefficient: wasted addresses • Inflexible: fixed interpretation • Not scalable: – Number of networks is growing – Not enough network numbers
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.31
IP addressing schemes • Sub-netting: Create sub networks within an address space • CIDR: Variable interpretations for the network number • Ipv6: 128 bit address space
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.32
Address Resolution Protocol (ARP) [RFC 1010] • ARP request - Broadcast ``who is a.b.c.d?'' • ARP reply - Target alone fills • ARP cache “arp –a”
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.33
IP forwarding at a Host • Destination on my net? • If yes, – use ARP and deliver directly
• If not, – give to default gateway
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.34
IP forwarding at a Gateway • Am I the destination IP? • If yes, – deliver packet to higher layer
• If not, – which interface to forward on? – consult Routing Tables to decide
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.35
Network Layer – Building routing tables • Routing Information Protocol (RIP) [RFC 2453] • Open Shortest Path First (OSPF) [RFC 2328] • Border Gateway Protocol (BGP) [RFC 1771]
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.36
Example: RIP
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.37
Network Layer – Congestion Control • Congestion: – Performance degradation due to too many packets present in the subnet
• Causes: – Packets from several input lines needing the same output line – Bursty traffic, slow processors – Insufficient bandwidth/buffering
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.38
Congestion control strategies • Packet discarding • Flow control at higher layers Choke the input • Allocate resources in advance
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.39
Transport Layer • Lowest end-to-end service • Main Issues: – Reliable end-to-end delivery – Flow control – Congestion control
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.40
User Datagram Protocol (UDP) • Datagram oriented • Doesn't guarantee any reliability • Useful for Applications such as voice and video, where – retransmission should be avoided – the loss of a few packets does Prof . Aniruddha sahoo, KReSIT, IIT Bombay Introduction not greatly affect performance
1.41
Transmission Control Protocol (TCP) • Guaranteed service protocol – ensures that a packet has been received by the destination by using acknowledgements and retransmission – applications need to establish a TCP connection prior to transfer
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.42
TCP features • Connection Oriented • Reliable • Byte Stream • Flow Control • Congestion Control
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.43
Different Network Devices
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.44
Interconnection devices (switch)
Basic idea: Transfer data from input to output Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.45
Generic Switch
Latency: Time a switch takes to figure out where to forward a data unit Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.46
Repeater • Amplifies the signal received on input and transmits it on output • Enables the extension of a signal over a distance • More widely deployed in wireless networks Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.47
Repeaters
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.48
Modem • Accepts a serial stream of bits as input and produces a modulated carrier as output (or vice versa) • Typically between (digital) computer and (analog) telephones • ISDN adapter: 128 Kbps v/s 56 Kbps Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.49
Modems
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.50
Hub • Connect nodes/segments of a LAN. – Contains multiple ports. – When a packet arrives at one port, it is copied to the other ports so that all segments of the LAN can see all packets. – A multiple port repeater
• Intelligent/Manageable Hub Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.51
Hubs
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.52
Switch • Reads destination address of each packet and forwards appropriately – Does not re-broadcast every packet to every port
• Layer 3 switches (IP switches) also perform routing functions – “Route once, switch many” – Initially packets are routed – Cache entry for next hop for source and dest pair is made Prof . – Aniruddha sahoo, KReSIT, IIT Bombay Introduction Packets are then switched using the cache1.53
Switches
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.54
Bridge • Connects two LANs or two segments of the same LAN – The two LANs may be alike or dissimilar – e.g., a bridge can connect an Ethernet with a Token-Ring LAN
• May be needed due to the physical distance between two LANs • May be because providing so many hosts may not be possible on one LAN. • Provides security against promiscuous mode Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.55
Bridge • Examines each message on a LAN – “ignores” same LAN destinations – forwards ones for interconnected LANs
• messages are accepted only by the intended destination
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.56
Bridges
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.57
Router • Connects at least two networks – decides routes for packets, based on destination address and network topology
• Exchanges information with other routers – to learn network topology
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.58
Router • Maintains a table of – available routes and their conditions
• uses table along with path cost algorithms to – determine the best route for a given packet
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.59
Routers
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.60
Gateway • A network point that acts as an entrance to another network • Often associated with a router • Often acts as a proxy server and a firewall server
Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.61
Satellites • Geo-Stationary: 35,680 km – Footprint (30% of Earth's surface)
• Functions: – Accept uplink signals – Translate signals to downlink frequency – Transmit downlink signals Prof . Aniruddha sahoo, KReSIT, IIT Bombay
Introduction
1.62
Satellites • Characteristics – Transmission cost independent of distance – Propagation delay (0.28 seconds!) – Broadcast medium (Security problem!)
• Master Earth Station • Transponders – Listens to some portion of the spectrum, amplifies the incoming Prof . Aniruddha sahoo, KReSIT, IIT Bombay Introduction signal and rebroadcast at another
1.63