12 ethernet-wifi

Olivier Bonaventure
Olivier BonaventureProfessor at Université catholique de Louvain (UCL) and co-founder at Tessares
Week 12
Ethernet
WiFi
Agenda
• Ethernet
• Spanning Tree
• WiFi
• IP version 4
Ethernet
Frames• DIX Format
• proposed by Digital, Intel and Xerox
Preamble
[8 bytes]
Destination
address
Type
[2 bytes]
CRC [32 bits]
Source address
Data
[46-1500 bytes
Used to mark the beginning of the frame
Allows the receiver to synchronise its
clock to the sender’s clock
Indication of the type of packet contained
inside the frame
Upper layer protocol must ensure that
the payload of the Ethernet frame is
at least 46 bytes and at most 1500 bytes
The Ethernet zoo
10BASE5 Thick coaxial cable, 500m
10BASE2 Thin coaxial cable, 185m
10BASE-T Two pairs of category 3+ UTP
10BASE-F 10 Mb/s over optical fiber
100BASE-TX Category 5 UTP or STP, 100 m maximum
100BASE-FX Two multimode optical fiber, 2 km maximum
1000BASE-CX Two pairs shielded twisted pair, 25m maximum
1000BASE-SX Two multimode or single mode optical fibers with lasers
10 Gbps optical fiber but also cat 6 twisted pair
40-100 Gbps being developed, standard expected in 2010, 40Gbps one
meter long for switch backplanes, 10 meters for copper cable
and 100 meters for fiber optics
Ethernet switch
• A switch is a relay that operates in the
datalink layer
Host A Host BSwitch
Physical Phys. Phys.
Datalink
Network Network
Datalink
Physical
How to favour high-
speed links ?
Switch 1
Switch 7
Switch 9
Switch 22
Switch 44
Switch 2
Link costs
Bandwidth
Recommended
link cost range
Recommended
link cost value
10 Mbps 50-600 100
100 Mbps 10-60 19
1000 Mbps 3-10 4
Selection of root
• Root priority vectors
• Port 1: 8,7+100,9
• Port 2 : 8,9+1,22
• Port 3 : 8,4+10,17
• Port 4: 8,4+10,18
S91
1
2
34
R=8,C=7,T=9
R=8,C=9,T=22
R=8,C=4,T=17R=8,C=4,T=18
• Switch S91's BPDU
• R=8, C=10,T=91
Switches and hubs
• How should the spanning tree work with
hubs ?
S1
1
4
Hub1
S3
1
2
Hub2
2
The states of the
ports• Root port
• Port having the best root priority
vector
• Only one root port per switch !
• Designated port
• Ports where the switch's BPDU is
better than best BDPU received
• Blocked ports
• Ports where the switch's BPDU is
worse than best BDPU received
The root switch
• What is the state of the ports of the root
switch ?
• How to influence the selection of the
root switch ?
S1
1
2
34
Corner cases
• Parallel links
• Backup links to same LAN
S2S3
1
2 3
4
S1
2 4
S1
Spanning tree
1
2
34 1
1
1
1
2
22
2
3
3
3
4
S222S111
S333
S444
S555
1 Gbps, cost =10
10 Gbps, cost =1
BPDU format
• Simplified BPDU format
BPDU
Header
Root Id
Switch identifier
Root path cost
Protocol Identifier
Protocol version
Configuration BPDU or topology change
Flags
Identifier of the switch sending the BPDU
Port identifier : used when a switch has several
ports attached to the same LAN
Current root identifier
Port identifier
Message age
Max age
Hello time
Forward delay
Port states and
activityReceive
BPDUs
Transmit
BPDUs
Blocked yes no
Root yes no
Designated yes yes
Learn
Addresses
Forward Data
Frames
Inactive no no
Active yes yes
Failures
• Failure (power-off) of the root switch
• A new root needs to be elected
• Failure of a designated switch
• Another switch should replace
• Failure of a link
• a disabled link should be enabled
• If the network is split we have two
separated networks
Dealing with failures• Regular transmission of BPDUs
• Default Hello timer is two seconds
• BPDUs stored in the switches age and are
removed when they timeout
• Failure notification mechanism
• When switch detects important failure, it
sends a topology change BPDU to Root
• Upon reception of TC BPDU all switches
stop forwarding data frames and recompute
ST
Full duplex Ethernet
Observations
In many networks, Ethernet is a often a point-to-point
technology
host-to-switch
switch to switch
Twisted-pairs and fiber-based physical layers allow
to send and receive at the same time
S1 S2
HUB
HUB
Ethernet full duplex
No collision is possible on a full duplex
Ethernet/FastEthernet/GigabitEthernet link
Disable CSMA/CD on such links
Advantages
Improves bandwidth
Both endpoints can transmit frames at the same time
CSMA/CD is disabled
No constraint on propagation delay anymore
Ethernet network can be as large as we want !
No constraint on minimum frame size anymore
We do not need the frame extension hack for Gigabit Ethernet!
Full duplex Ethernet (3)
Drawback
If CSMA/CD is disabled, access control is disabled
and congestion can occur
How to solve this problem inside Ethernet ?
Add buffers to switches
but infinite buffers are impossible and useless anyway
Cause collisions (e.g. jamming) to force collisions on the inter-switch link
and uplink is server is too fast
Drawback : interswitch link could be entirely blocked
Develop a new flow control mechanism inside MAC layer
Pause frame to slowdown transmission
S1 S2Server
Client
FastEthernet (100 Mbps) Ethernet (10 Mbps)
Ethernet flow control
PAUSE frame indicates how much time the upstream
should wait before transmitting next frame
S1
server
Client
FastEthernet
(100 Mbps)
Ethernet
(10 Mbps)
PAUSE [2msec]
Frame1 [10000 bits]
Frame3 [10000 bits]
Frame2 [10000 bits]
100 nsec
Frame1 [10000 bits]
1 microsec
Frame2 [10000 bits]
Sender blocked
Virtual LANs
Allows to build several logical networks on top of
a single physical network
S
A B
C
D
F
E
Each port on each switch is
associated to a particular VLAN
All the hosts that reside on the same VLAN
can exchange Ethernet frames
A host on VLAN1 cannot send an Ethernet
frame towards another host that belongs to
VLAN2
Broadcast and multicast frames are only
sent to the members of the VLAN
VLAN1 : A,E,F
VLAN2 : B,C,D
VLANs in campus networks
How to support VLANs in a campus network
S1
A B
C
D
F
E
VLAN1 : A,E,F
VLAN2 : B,C,D
S2
Possible solutions
Place on each switch a table
that maps each MAC address
on a VLAN id
difficult to manage this table
Change frame format used on inter-
switch links to include a VLAN
identifier
new header added by first switch
new header removed by last switch
VLAN frame format
Destination
Address
Address
Identifies the frame as containing VLANtag
Tag control information contains two types of
information :
- VLAN identifier (12 bits) : up to 4094
different VLANs can be defined
- Priority (3 bits) : indicates the importance of
the frame and can be used by switches to
provide a better service for some frames
(e.g. Voice)
Type
CRC [32 bits]
Payload
VLAN
Protocol Id
0x8100
Tag Control Info
Agenda
• Ethernet
• Spanning Tree
• WiFi
• IP version 4
The WiFi zoo
Standard Frequency Typical
throughput
Raw
bandwidth
Range in/out
(m)
802 .11 2.4 GHz 0.9 Mbps 2 Mbps 20 / 100
802 .11a 5 GHz 23 Mbps 54 Mbps 35 / 120
802 .11b 2.4 GHz 4.3 Mbps 11 Mbps 38 / 140
802 .11g 2.4 GHz 19 Mbps 54 Mbps 38 / 140
802 .11n 2.4 / 5 GHz 74 Mbps up to 600
Mbps
70 / 250
Source http://en.wikipedia.org/wiki/IEEE_802.11n
Practical issues
with WLAN deployments
Home environment
A WLAN can interfere with the neighbour’s
WLAN
Practical issues
with WLAN deployments
Enterprise networks
One access point can interfere with other access points
reduces significantly overall available bandwidth
The WiFi channel frequencies
WiFi standards operate on several frequencies
called channels
Usually about a dozen channels
Why multiple channels ?
Some channels my be affected by interference and
have a lower performance
Some frequencies are reserved for specific usage in
some countries
Allows frequency reuse when there are multiple WiFi
networks in the same area
Unfortunately, many home access points operate by default
on the same factory set channel which causes interference
and reduced bandwidth
WLAN in enterprise
environments
What could be done to improve the performance
of WLANs ?
Reduce interference as much as possible
Tune channel frequencies
Reduce transmission power
Similar to techniques used in GSM networks
Recent deployments rely on centralized controllers and
thin access points
802.11 frame format
Frame control
[2 bytes]
Duration/Id
[2 bytes]
Address 2
[6 bytes]
Address 1
[6 bytes]
Standard header
- Protocol version [2 bits] : current version 0
- Type [2 bits] : control / data / management frame
- Subtype [2 bits] : specific subtype of frame
- to DS [1 bit] : frame is sent to distribution system
- from DS [1 bit] : frame is from distribution system
- more fragment [1 bit] : used when packets are fragmented
- Retry [1 bit] : retransmission
- Power Management [1 bit] : used for power management fct
- More data [1 bit] : indicates that there are other frames
for this station at the access point
- WEP [1 bit] : 1 if frame has been encrypted with WEP
- order [1 bit] : for strictly ordered class
Address 3
[6 bytes]
Sequence
control [2 bytes]
Frame body
[0-2312 bytes]
Frame Check
Sequence
Sequence number
- 12 bits frame sequence number
- 4 bits fragment number
Some 802.11 control frames
Frame control
[2 bytes]
Duration
[2 bytes]
Receiver
address
[6 bytes]
Frame Check
Sequence
Frame control
[2 bytes]
Duration
[2 bytes]
Receiver
address
[6 bytes]
Frame Check
Sequence
Transmitter
address
[6 bytes]
Frame control
[2 bytes]
Duration
[2 bytes]
Receiver
address
[6 bytes]
Frame Check
Sequence
ACK frame
RTS frame
CTS frame
IP over 802.11
Frame control
Duration/Id
[2 bytes]
Address 2
[6 bytes]
Address 1
[6 bytes]
Address 3
[6 bytes]
Sequence
control [2 bytes]
IP packet
Frame Check
Sequence
LLC/SNAP
0x800
LLC/SNAP
- 4 bytes header
EtherType
- 0x800 for IP, 0x86DD for IPv6
Agenda
• Ethernet
• Spanning Tree
• WiFi
• IP version 4
IP version 4
Ver IHL DS Total length
Payload
32 bits
ChecksumTTL Protocol
Flags FragmentOffset
20 bytes
Source IP address
Identification
Destination IP address
Differentiated Services Byte used to
specify Quality of Service expected
for this packet
IP version used to encode header
- current version is 4
- IP version 6
Header length (default 20 bytes)
Maximum : 64 bytes for entire header
including options
Binary flags
More
Don't Fragment : Packet
cannot be fragmented by
intermediate routers
Allows to identify the “user” above
the IP layer (e.g. UDP, TPC, ...)
Plays similar role to TCP port
numbers
Packet identification
used for fragmentation and
reassembly
Options
Optional header extension
Time to Live
IPv4 addresses
• 32 bits long, one address per interface
• Example
Notation 138.48.26.1/23 or
138.48.26.1 255.255.254.0
• All hosts that belong to the same subnetwork
can directly exchange frames through
datalink layer
ARP : Address
Resolution Protocol
IP: 10.0.1.9
Eth : B
IP: 10.0.1.8
Eth : C
IP: 10.0.1.11
Eth : E
IP: 10.0.1.22
Eth : A
10.0.1.22 needs to send an IP packet to 10.0.1.8
1
IP: 10.0.1.9
Eth : B
IP: 10.0.1.8
Eth : C
IP: 10.0.1.11
Eth : E
IP: 10.0.1.22
Eth : A
ARP : broadcast frame Addr Eth 10.0.1.8 ?
2
IP: 10.0.1.9
Eth : B
IP: 10.0.1.8
Eth : C
IP: 10.0.1.11
Eth : E
IP: 10.0.1.22
Eth : A
10.0.1.8 replies in an Ethernet frame and A knows the MAC address to send
its IP packet
3
ARP : frame format
Preamble
[7 bytes]
Delimiter[1byte]
Destination
Address
Type: 0x806
CRC [32 bits]
Source
Address
MAC address of the sender
Broadcast : 111...111
Header
Sender MAC
Sender IP
Target MAC
Common header for all ARP frames
- Hardware type Ethernet is 1
- Protocol type , IP is 0x0800.- Hardware
length : length of MAC address - Protocol
length : length of network layer address -
Operation : 1 for request, 2 for reply, 3 for
RARP request, and 4 for RARP reply.
Target IP
ICMP version 4
Ver IHL DS
IP header
ChecksumTTL Protocol
Source IP address
Identification
Destination IP address
Data
Type Code
Ver IHL DS Total length
ChecksumTTL Protocol
Flags FragmentOffset
Source IP address
Identification
Destination IP address
First 64 bits of payload
Flags FragmentOffset
Protocol=1 for ICMP
covers entire ICMP message
Additional information about
error, type of error
Total length
Checksum
32 bits
ICMP header Type and Code indicate the type of
error detected
l Destination unreachable
lnetwork unreachable
lhost unreachable
lprotocol unreachable
lport unreachable
lfragmentation needed
lsource route failed
lRedirect
lParameter problem
lTime exceeded
lTTL exceeded
lreassembly time exceeded
lEcho requEast et Echo reply
IP over Ethernet
Detailed example
Examples
IP packet from 10.0.1.22 to 10.0.3.11
IP packet from 10.0.2.9 to 10.0.1.22
IP packet from 10.0.3.11 to 10.0.1.22
IP: 10.0.2.9/24
Eth : B
10.0.1.0/24 via 10.0.2.1
10.0.3.0/24 via 10.0.2.2
ARP table
Empty
IP: 10.0.1.8/24
R default: 10.0.1.1
Eth : C
ARP table
Empty
IP: 10.0.1.22/24
R default: 10.0.1.1
Eth : A
ARP table
Empty
R1
IP: 10.0.1.1/24
IP: 10.0.2.1/24
Eth : R1-West
Eth : R1-East
ARP table
Empty
H1 S2 R2
Hub
Router Switch Router
IP: 10.0.3.11/24
Eth : F
R default:10.0.3.2
ARP table
Empty
IP: 10.0.2.2/24
IP: 10.0.3.2/24
Eth : R2-West
Eth : R2-East
ARP table
Empty
The Internet architecture
that students learn
Physical
Datalink
Network
Transport
Application
O. Bonaventure, Computer networking : Principles, Protocols and Practice, open ebook, http://inl.info.ucl.ac.be/cnp3
Physical
Physical
Datalink
Physical
Datalink
Network
A typical "academic" network
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Physical
Datalink
The end-to-end principle
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Physical
Datalink
TCP
In reality
– almost as many middleboxes as routers
– various types of middleboxes are deployed
Sherry, Justine, et al. "Making middleboxes someone else's problem: Network processing as a cloud service."
Proceedings of the ACM SIGCOMM 2012 conference. ACM, 2012.
A middlebox zoo
http://www.cisco.com/web/about/ac50/ac47/2.html
Web Security
Appliance
NAC Appliance
ACE XML
Gateway
Streamer
VPN Concentrator
SSL
Terminator
Cisco IOS Firewall
IP Telephony
Router
PIX Firewall
Right and Left
Voice
GatewayVVVV
Content
Engine
NAT
How to model those middleboxes ?
• In the official architecture, they do not exist
• In reality...
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
TCP
Physical
Datalink
Network
Transport
Application
TCP segments processed by a router
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
IP
TCP
Network Address Translators
• Preserves IP addresses by using private
addresses in LAN
– Packets's addresses are rewritten by NAT
Private addresses Public addresses
TCP segments processed by a NAT
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
1 of 49

Recommended

Part 9 : Congestion control and IPv6 by
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Olivier Bonaventure
124 views59 slides
10 routing-bgp by
10 routing-bgp10 routing-bgp
10 routing-bgpOlivier Bonaventure
2.1K views49 slides
IPv6 Segment Routing : an end-to-end solution ? by
IPv6 Segment Routing : an end-to-end solution ?IPv6 Segment Routing : an end-to-end solution ?
IPv6 Segment Routing : an end-to-end solution ?Olivier Bonaventure
459 views31 slides
Making our networking stack truly extensible by
Making our networking stack truly extensible Making our networking stack truly extensible
Making our networking stack truly extensible Olivier Bonaventure
768 views53 slides
Implementing IPv6 Segment Routing in the Linux kernel by
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelOlivier Bonaventure
1.1K views27 slides
Part 7 : HTTP/2, UDP and TCP by
Part 7 : HTTP/2, UDP and TCPPart 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCPOlivier Bonaventure
119 views89 slides

More Related Content

What's hot

Part 10 : Routing in IP networks and interdomain routing with BGP by
Part 10 : Routing in IP networks and interdomain routing with BGPPart 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGPOlivier Bonaventure
151 views82 slides
Part 4 : reliable transport and sharing resources by
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesOlivier Bonaventure
70 views54 slides
9 ipv6-routing by
9 ipv6-routing9 ipv6-routing
9 ipv6-routingOlivier Bonaventure
2.8K views45 slides
TCPLS presentation @ietf 109 by
TCPLS presentation @ietf 109TCPLS presentation @ietf 109
TCPLS presentation @ietf 109Olivier Bonaventure
125 views15 slides
16 coms 525 tcpip - routing protocols -all by
16    coms 525 tcpip - routing protocols -all16    coms 525 tcpip - routing protocols -all
16 coms 525 tcpip - routing protocols -allPalanivel Kuppusamy
36 views80 slides
Future Internet protocols by
Future Internet protocolsFuture Internet protocols
Future Internet protocolsOlivier Bonaventure
877 views53 slides

What's hot(20)

Part 10 : Routing in IP networks and interdomain routing with BGP by Olivier Bonaventure
Part 10 : Routing in IP networks and interdomain routing with BGPPart 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGP
Surviving The Stump The Chump Interview Questions by Duane Bodle
Surviving The Stump The Chump Interview QuestionsSurviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview Questions
Duane Bodle1.1K views
Network interview questions by rajasekar1712
Network interview questionsNetwork interview questions
Network interview questions
rajasekar1712647 views
Part 5 : Sharing resources, security principles and protocols by Olivier Bonaventure
Part 5 : Sharing resources, security principles and protocolsPart 5 : Sharing resources, security principles and protocols
Part 5 : Sharing resources, security principles and protocols
Beyond TCP: The evolution of Internet transport protocols by Olivier Bonaventure
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocols
Olivier Bonaventure18.3K views

Similar to 12 ethernet-wifi

3-MACSublayer.ppt by
3-MACSublayer.ppt3-MACSublayer.ppt
3-MACSublayer.pptDigiPlexus
5 views36 slides
Telecommunications: Wireless Networks by
Telecommunications: Wireless NetworksTelecommunications: Wireless Networks
Telecommunications: Wireless NetworksNapier University
573 views57 slides
Networking basics by
Networking basicsNetworking basics
Networking basicsSridhar Baithi
684 views60 slides
Networking Basics by
Networking BasicsNetworking Basics
Networking BasicsSMC Networks Europe
7.5K views84 slides
6 Ethernet by
6 Ethernet6 Ethernet
6 EthernetRam Dutt Shukla
833 views15 slides
WSN protocol 802.15.4 together with cc2420 seminars by
WSN protocol 802.15.4 together with cc2420 seminars WSN protocol 802.15.4 together with cc2420 seminars
WSN protocol 802.15.4 together with cc2420 seminars Salah Amean
6.4K views69 slides

Similar to 12 ethernet-wifi(20)

WSN protocol 802.15.4 together with cc2420 seminars by Salah Amean
WSN protocol 802.15.4 together with cc2420 seminars WSN protocol 802.15.4 together with cc2420 seminars
WSN protocol 802.15.4 together with cc2420 seminars
Salah Amean6.4K views
Networks (Distributed computing) by Sri Prasanna
Networks (Distributed computing)Networks (Distributed computing)
Networks (Distributed computing)
Sri Prasanna1.1K views
Unit I Wireless Networks.ppt by Siva Cool
Unit I Wireless Networks.pptUnit I Wireless Networks.ppt
Unit I Wireless Networks.ppt
Siva Cool7 views
CCNA Basic Switching and Switch Configuration by Dsunte Wilson
CCNA Basic Switching and Switch ConfigurationCCNA Basic Switching and Switch Configuration
CCNA Basic Switching and Switch Configuration
Dsunte Wilson27.2K views
Basic switch and switch configuration.pptx by itwkd
Basic switch and switch configuration.pptxBasic switch and switch configuration.pptx
Basic switch and switch configuration.pptx
itwkd11 views
Networks A2 by aeneas
Networks  A2Networks  A2
Networks A2
aeneas678 views
Chap.1 ethernet introduction by 東原 李
Chap.1 ethernet introductionChap.1 ethernet introduction
Chap.1 ethernet introduction
東原 李2.8K views
CCNA BASIC SWITCHING AND SWITCH CONFIGURATION by Aswini Badatya
CCNA BASIC SWITCHING AND SWITCH CONFIGURATIONCCNA BASIC SWITCHING AND SWITCH CONFIGURATION
CCNA BASIC SWITCHING AND SWITCH CONFIGURATION
Aswini Badatya955 views

More from Olivier Bonaventure

Part3-reliable.pptx by
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptxOlivier Bonaventure
10 views55 slides
Part10-router.pptx by
Part10-router.pptxPart10-router.pptx
Part10-router.pptxOlivier Bonaventure
10 views24 slides
Part1-Intro-Apps.pptx by
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptxOlivier Bonaventure
22 views112 slides
Part9-congestion.pptx by
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptxOlivier Bonaventure
13 views56 slides
Part2-Apps-Security.pptx by
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptxOlivier Bonaventure
14 views94 slides
Part11-lan.pptx by
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptxOlivier Bonaventure
8 views89 slides

More from Olivier Bonaventure(20)

A personal journey towards more reproducible networking research by Olivier Bonaventure
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking research
Part 3 : building a network and supporting applications by Olivier Bonaventure
Part 3 : building a network and supporting applicationsPart 3 : building a network and supporting applications
Part 3 : building a network and supporting applications
Part 2 : reliable transmission and building a network by Olivier Bonaventure
Part 2 : reliable transmission and building a networkPart 2 : reliable transmission and building a network
Part 2 : reliable transmission and building a network

Recently uploaded

Pitchbook Repowerlab.pdf by
Pitchbook Repowerlab.pdfPitchbook Repowerlab.pdf
Pitchbook Repowerlab.pdfVictoriaGaleano
6 views12 slides
REACTJS.pdf by
REACTJS.pdfREACTJS.pdf
REACTJS.pdfArthyR3
37 views16 slides
Web Dev Session 1.pptx by
Web Dev Session 1.pptxWeb Dev Session 1.pptx
Web Dev Session 1.pptxVedVekhande
17 views22 slides
GDSC Mikroskil Members Onboarding 2023.pdf by
GDSC Mikroskil Members Onboarding 2023.pdfGDSC Mikroskil Members Onboarding 2023.pdf
GDSC Mikroskil Members Onboarding 2023.pdfgdscmikroskil
63 views62 slides
BCIC - Manufacturing Conclave - Technology-Driven Manufacturing for Growth by
BCIC - Manufacturing Conclave -  Technology-Driven Manufacturing for GrowthBCIC - Manufacturing Conclave -  Technology-Driven Manufacturing for Growth
BCIC - Manufacturing Conclave - Technology-Driven Manufacturing for GrowthInnomantra
15 views4 slides
Design of machine elements-UNIT 3.pptx by
Design of machine elements-UNIT 3.pptxDesign of machine elements-UNIT 3.pptx
Design of machine elements-UNIT 3.pptxgopinathcreddy
37 views31 slides

Recently uploaded(20)

REACTJS.pdf by ArthyR3
REACTJS.pdfREACTJS.pdf
REACTJS.pdf
ArthyR337 views
Web Dev Session 1.pptx by VedVekhande
Web Dev Session 1.pptxWeb Dev Session 1.pptx
Web Dev Session 1.pptx
VedVekhande17 views
GDSC Mikroskil Members Onboarding 2023.pdf by gdscmikroskil
GDSC Mikroskil Members Onboarding 2023.pdfGDSC Mikroskil Members Onboarding 2023.pdf
GDSC Mikroskil Members Onboarding 2023.pdf
gdscmikroskil63 views
BCIC - Manufacturing Conclave - Technology-Driven Manufacturing for Growth by Innomantra
BCIC - Manufacturing Conclave -  Technology-Driven Manufacturing for GrowthBCIC - Manufacturing Conclave -  Technology-Driven Manufacturing for Growth
BCIC - Manufacturing Conclave - Technology-Driven Manufacturing for Growth
Innomantra 15 views
Design of machine elements-UNIT 3.pptx by gopinathcreddy
Design of machine elements-UNIT 3.pptxDesign of machine elements-UNIT 3.pptx
Design of machine elements-UNIT 3.pptx
gopinathcreddy37 views
_MAKRIADI-FOTEINI_diploma thesis.pptx by fotinimakriadi
_MAKRIADI-FOTEINI_diploma thesis.pptx_MAKRIADI-FOTEINI_diploma thesis.pptx
_MAKRIADI-FOTEINI_diploma thesis.pptx
fotinimakriadi12 views
Design of Structures and Foundations for Vibrating Machines, Arya-ONeill-Pinc... by csegroupvn
Design of Structures and Foundations for Vibrating Machines, Arya-ONeill-Pinc...Design of Structures and Foundations for Vibrating Machines, Arya-ONeill-Pinc...
Design of Structures and Foundations for Vibrating Machines, Arya-ONeill-Pinc...
csegroupvn8 views
Design_Discover_Develop_Campaign.pptx by ShivanshSeth6
Design_Discover_Develop_Campaign.pptxDesign_Discover_Develop_Campaign.pptx
Design_Discover_Develop_Campaign.pptx
ShivanshSeth649 views
Ansari: Practical experiences with an LLM-based Islamic Assistant by M Waleed Kadous
Ansari: Practical experiences with an LLM-based Islamic AssistantAnsari: Practical experiences with an LLM-based Islamic Assistant
Ansari: Practical experiences with an LLM-based Islamic Assistant
M Waleed Kadous9 views
Searching in Data Structure by raghavbirla63
Searching in Data StructureSearching in Data Structure
Searching in Data Structure
raghavbirla6317 views
SUMIT SQL PROJECT SUPERSTORE 1.pptx by Sumit Jadhav
SUMIT SQL PROJECT SUPERSTORE 1.pptxSUMIT SQL PROJECT SUPERSTORE 1.pptx
SUMIT SQL PROJECT SUPERSTORE 1.pptx
Sumit Jadhav 22 views
ASSIGNMENTS ON FUZZY LOGIC IN TRAFFIC FLOW.pdf by AlhamduKure
ASSIGNMENTS ON FUZZY LOGIC IN TRAFFIC FLOW.pdfASSIGNMENTS ON FUZZY LOGIC IN TRAFFIC FLOW.pdf
ASSIGNMENTS ON FUZZY LOGIC IN TRAFFIC FLOW.pdf
AlhamduKure8 views
2023Dec ASU Wang NETR Group Research Focus and Facility Overview.pptx by lwang78
2023Dec ASU Wang NETR Group Research Focus and Facility Overview.pptx2023Dec ASU Wang NETR Group Research Focus and Facility Overview.pptx
2023Dec ASU Wang NETR Group Research Focus and Facility Overview.pptx
lwang78180 views
Créativité dans le design mécanique à l’aide de l’optimisation topologique by LIEGE CREATIVE
Créativité dans le design mécanique à l’aide de l’optimisation topologiqueCréativité dans le design mécanique à l’aide de l’optimisation topologique
Créativité dans le design mécanique à l’aide de l’optimisation topologique
LIEGE CREATIVE8 views

12 ethernet-wifi

  • 2. Agenda • Ethernet • Spanning Tree • WiFi • IP version 4
  • 3. Ethernet Frames• DIX Format • proposed by Digital, Intel and Xerox Preamble [8 bytes] Destination address Type [2 bytes] CRC [32 bits] Source address Data [46-1500 bytes Used to mark the beginning of the frame Allows the receiver to synchronise its clock to the sender’s clock Indication of the type of packet contained inside the frame Upper layer protocol must ensure that the payload of the Ethernet frame is at least 46 bytes and at most 1500 bytes
  • 4. The Ethernet zoo 10BASE5 Thick coaxial cable, 500m 10BASE2 Thin coaxial cable, 185m 10BASE-T Two pairs of category 3+ UTP 10BASE-F 10 Mb/s over optical fiber 100BASE-TX Category 5 UTP or STP, 100 m maximum 100BASE-FX Two multimode optical fiber, 2 km maximum 1000BASE-CX Two pairs shielded twisted pair, 25m maximum 1000BASE-SX Two multimode or single mode optical fibers with lasers 10 Gbps optical fiber but also cat 6 twisted pair 40-100 Gbps being developed, standard expected in 2010, 40Gbps one meter long for switch backplanes, 10 meters for copper cable and 100 meters for fiber optics
  • 5. Ethernet switch • A switch is a relay that operates in the datalink layer Host A Host BSwitch Physical Phys. Phys. Datalink Network Network Datalink Physical
  • 6. How to favour high- speed links ? Switch 1 Switch 7 Switch 9 Switch 22 Switch 44 Switch 2
  • 7. Link costs Bandwidth Recommended link cost range Recommended link cost value 10 Mbps 50-600 100 100 Mbps 10-60 19 1000 Mbps 3-10 4
  • 8. Selection of root • Root priority vectors • Port 1: 8,7+100,9 • Port 2 : 8,9+1,22 • Port 3 : 8,4+10,17 • Port 4: 8,4+10,18 S91 1 2 34 R=8,C=7,T=9 R=8,C=9,T=22 R=8,C=4,T=17R=8,C=4,T=18 • Switch S91's BPDU • R=8, C=10,T=91
  • 9. Switches and hubs • How should the spanning tree work with hubs ? S1 1 4 Hub1 S3 1 2 Hub2 2
  • 10. The states of the ports• Root port • Port having the best root priority vector • Only one root port per switch ! • Designated port • Ports where the switch's BPDU is better than best BDPU received • Blocked ports • Ports where the switch's BPDU is worse than best BDPU received
  • 11. The root switch • What is the state of the ports of the root switch ? • How to influence the selection of the root switch ? S1 1 2 34
  • 12. Corner cases • Parallel links • Backup links to same LAN S2S3 1 2 3 4 S1 2 4 S1
  • 14. BPDU format • Simplified BPDU format BPDU Header Root Id Switch identifier Root path cost Protocol Identifier Protocol version Configuration BPDU or topology change Flags Identifier of the switch sending the BPDU Port identifier : used when a switch has several ports attached to the same LAN Current root identifier Port identifier Message age Max age Hello time Forward delay
  • 15. Port states and activityReceive BPDUs Transmit BPDUs Blocked yes no Root yes no Designated yes yes Learn Addresses Forward Data Frames Inactive no no Active yes yes
  • 16. Failures • Failure (power-off) of the root switch • A new root needs to be elected • Failure of a designated switch • Another switch should replace • Failure of a link • a disabled link should be enabled • If the network is split we have two separated networks
  • 17. Dealing with failures• Regular transmission of BPDUs • Default Hello timer is two seconds • BPDUs stored in the switches age and are removed when they timeout • Failure notification mechanism • When switch detects important failure, it sends a topology change BPDU to Root • Upon reception of TC BPDU all switches stop forwarding data frames and recompute ST
  • 18. Full duplex Ethernet Observations In many networks, Ethernet is a often a point-to-point technology host-to-switch switch to switch Twisted-pairs and fiber-based physical layers allow to send and receive at the same time S1 S2 HUB HUB
  • 19. Ethernet full duplex No collision is possible on a full duplex Ethernet/FastEthernet/GigabitEthernet link Disable CSMA/CD on such links Advantages Improves bandwidth Both endpoints can transmit frames at the same time CSMA/CD is disabled No constraint on propagation delay anymore Ethernet network can be as large as we want ! No constraint on minimum frame size anymore We do not need the frame extension hack for Gigabit Ethernet!
  • 20. Full duplex Ethernet (3) Drawback If CSMA/CD is disabled, access control is disabled and congestion can occur How to solve this problem inside Ethernet ? Add buffers to switches but infinite buffers are impossible and useless anyway Cause collisions (e.g. jamming) to force collisions on the inter-switch link and uplink is server is too fast Drawback : interswitch link could be entirely blocked Develop a new flow control mechanism inside MAC layer Pause frame to slowdown transmission S1 S2Server Client FastEthernet (100 Mbps) Ethernet (10 Mbps)
  • 21. Ethernet flow control PAUSE frame indicates how much time the upstream should wait before transmitting next frame S1 server Client FastEthernet (100 Mbps) Ethernet (10 Mbps) PAUSE [2msec] Frame1 [10000 bits] Frame3 [10000 bits] Frame2 [10000 bits] 100 nsec Frame1 [10000 bits] 1 microsec Frame2 [10000 bits] Sender blocked
  • 22. Virtual LANs Allows to build several logical networks on top of a single physical network S A B C D F E Each port on each switch is associated to a particular VLAN All the hosts that reside on the same VLAN can exchange Ethernet frames A host on VLAN1 cannot send an Ethernet frame towards another host that belongs to VLAN2 Broadcast and multicast frames are only sent to the members of the VLAN VLAN1 : A,E,F VLAN2 : B,C,D
  • 23. VLANs in campus networks How to support VLANs in a campus network S1 A B C D F E VLAN1 : A,E,F VLAN2 : B,C,D S2 Possible solutions Place on each switch a table that maps each MAC address on a VLAN id difficult to manage this table Change frame format used on inter- switch links to include a VLAN identifier new header added by first switch new header removed by last switch
  • 24. VLAN frame format Destination Address Address Identifies the frame as containing VLANtag Tag control information contains two types of information : - VLAN identifier (12 bits) : up to 4094 different VLANs can be defined - Priority (3 bits) : indicates the importance of the frame and can be used by switches to provide a better service for some frames (e.g. Voice) Type CRC [32 bits] Payload VLAN Protocol Id 0x8100 Tag Control Info
  • 25. Agenda • Ethernet • Spanning Tree • WiFi • IP version 4
  • 26. The WiFi zoo Standard Frequency Typical throughput Raw bandwidth Range in/out (m) 802 .11 2.4 GHz 0.9 Mbps 2 Mbps 20 / 100 802 .11a 5 GHz 23 Mbps 54 Mbps 35 / 120 802 .11b 2.4 GHz 4.3 Mbps 11 Mbps 38 / 140 802 .11g 2.4 GHz 19 Mbps 54 Mbps 38 / 140 802 .11n 2.4 / 5 GHz 74 Mbps up to 600 Mbps 70 / 250 Source http://en.wikipedia.org/wiki/IEEE_802.11n
  • 27. Practical issues with WLAN deployments Home environment A WLAN can interfere with the neighbour’s WLAN
  • 28. Practical issues with WLAN deployments Enterprise networks One access point can interfere with other access points reduces significantly overall available bandwidth
  • 29. The WiFi channel frequencies WiFi standards operate on several frequencies called channels Usually about a dozen channels Why multiple channels ? Some channels my be affected by interference and have a lower performance Some frequencies are reserved for specific usage in some countries Allows frequency reuse when there are multiple WiFi networks in the same area Unfortunately, many home access points operate by default on the same factory set channel which causes interference and reduced bandwidth
  • 30. WLAN in enterprise environments What could be done to improve the performance of WLANs ? Reduce interference as much as possible Tune channel frequencies Reduce transmission power Similar to techniques used in GSM networks Recent deployments rely on centralized controllers and thin access points
  • 31. 802.11 frame format Frame control [2 bytes] Duration/Id [2 bytes] Address 2 [6 bytes] Address 1 [6 bytes] Standard header - Protocol version [2 bits] : current version 0 - Type [2 bits] : control / data / management frame - Subtype [2 bits] : specific subtype of frame - to DS [1 bit] : frame is sent to distribution system - from DS [1 bit] : frame is from distribution system - more fragment [1 bit] : used when packets are fragmented - Retry [1 bit] : retransmission - Power Management [1 bit] : used for power management fct - More data [1 bit] : indicates that there are other frames for this station at the access point - WEP [1 bit] : 1 if frame has been encrypted with WEP - order [1 bit] : for strictly ordered class Address 3 [6 bytes] Sequence control [2 bytes] Frame body [0-2312 bytes] Frame Check Sequence Sequence number - 12 bits frame sequence number - 4 bits fragment number
  • 32. Some 802.11 control frames Frame control [2 bytes] Duration [2 bytes] Receiver address [6 bytes] Frame Check Sequence Frame control [2 bytes] Duration [2 bytes] Receiver address [6 bytes] Frame Check Sequence Transmitter address [6 bytes] Frame control [2 bytes] Duration [2 bytes] Receiver address [6 bytes] Frame Check Sequence ACK frame RTS frame CTS frame
  • 33. IP over 802.11 Frame control Duration/Id [2 bytes] Address 2 [6 bytes] Address 1 [6 bytes] Address 3 [6 bytes] Sequence control [2 bytes] IP packet Frame Check Sequence LLC/SNAP 0x800 LLC/SNAP - 4 bytes header EtherType - 0x800 for IP, 0x86DD for IPv6
  • 34. Agenda • Ethernet • Spanning Tree • WiFi • IP version 4
  • 35. IP version 4 Ver IHL DS Total length Payload 32 bits ChecksumTTL Protocol Flags FragmentOffset 20 bytes Source IP address Identification Destination IP address Differentiated Services Byte used to specify Quality of Service expected for this packet IP version used to encode header - current version is 4 - IP version 6 Header length (default 20 bytes) Maximum : 64 bytes for entire header including options Binary flags More Don't Fragment : Packet cannot be fragmented by intermediate routers Allows to identify the “user” above the IP layer (e.g. UDP, TPC, ...) Plays similar role to TCP port numbers Packet identification used for fragmentation and reassembly Options Optional header extension Time to Live
  • 36. IPv4 addresses • 32 bits long, one address per interface • Example Notation 138.48.26.1/23 or 138.48.26.1 255.255.254.0 • All hosts that belong to the same subnetwork can directly exchange frames through datalink layer
  • 37. ARP : Address Resolution Protocol IP: 10.0.1.9 Eth : B IP: 10.0.1.8 Eth : C IP: 10.0.1.11 Eth : E IP: 10.0.1.22 Eth : A 10.0.1.22 needs to send an IP packet to 10.0.1.8 1 IP: 10.0.1.9 Eth : B IP: 10.0.1.8 Eth : C IP: 10.0.1.11 Eth : E IP: 10.0.1.22 Eth : A ARP : broadcast frame Addr Eth 10.0.1.8 ? 2 IP: 10.0.1.9 Eth : B IP: 10.0.1.8 Eth : C IP: 10.0.1.11 Eth : E IP: 10.0.1.22 Eth : A 10.0.1.8 replies in an Ethernet frame and A knows the MAC address to send its IP packet 3
  • 38. ARP : frame format Preamble [7 bytes] Delimiter[1byte] Destination Address Type: 0x806 CRC [32 bits] Source Address MAC address of the sender Broadcast : 111...111 Header Sender MAC Sender IP Target MAC Common header for all ARP frames - Hardware type Ethernet is 1 - Protocol type , IP is 0x0800.- Hardware length : length of MAC address - Protocol length : length of network layer address - Operation : 1 for request, 2 for reply, 3 for RARP request, and 4 for RARP reply. Target IP
  • 39. ICMP version 4 Ver IHL DS IP header ChecksumTTL Protocol Source IP address Identification Destination IP address Data Type Code Ver IHL DS Total length ChecksumTTL Protocol Flags FragmentOffset Source IP address Identification Destination IP address First 64 bits of payload Flags FragmentOffset Protocol=1 for ICMP covers entire ICMP message Additional information about error, type of error Total length Checksum 32 bits ICMP header Type and Code indicate the type of error detected l Destination unreachable lnetwork unreachable lhost unreachable lprotocol unreachable lport unreachable lfragmentation needed lsource route failed lRedirect lParameter problem lTime exceeded lTTL exceeded lreassembly time exceeded lEcho requEast et Echo reply
  • 40. IP over Ethernet Detailed example Examples IP packet from 10.0.1.22 to 10.0.3.11 IP packet from 10.0.2.9 to 10.0.1.22 IP packet from 10.0.3.11 to 10.0.1.22 IP: 10.0.2.9/24 Eth : B 10.0.1.0/24 via 10.0.2.1 10.0.3.0/24 via 10.0.2.2 ARP table Empty IP: 10.0.1.8/24 R default: 10.0.1.1 Eth : C ARP table Empty IP: 10.0.1.22/24 R default: 10.0.1.1 Eth : A ARP table Empty R1 IP: 10.0.1.1/24 IP: 10.0.2.1/24 Eth : R1-West Eth : R1-East ARP table Empty H1 S2 R2 Hub Router Switch Router IP: 10.0.3.11/24 Eth : F R default:10.0.3.2 ARP table Empty IP: 10.0.2.2/24 IP: 10.0.3.2/24 Eth : R2-West Eth : R2-East ARP table Empty
  • 41. The Internet architecture that students learn Physical Datalink Network Transport Application O. Bonaventure, Computer networking : Principles, Protocols and Practice, open ebook, http://inl.info.ucl.ac.be/cnp3 Physical Physical Datalink Physical Datalink Network
  • 42. A typical "academic" network Physical Datalink Network Transport Application Physical Datalink Network Transport Application Physical Datalink Network Physical Datalink
  • 44. In reality – almost as many middleboxes as routers – various types of middleboxes are deployed Sherry, Justine, et al. "Making middleboxes someone else's problem: Network processing as a cloud service." Proceedings of the ACM SIGCOMM 2012 conference. ACM, 2012.
  • 45. A middlebox zoo http://www.cisco.com/web/about/ac50/ac47/2.html Web Security Appliance NAC Appliance ACE XML Gateway Streamer VPN Concentrator SSL Terminator Cisco IOS Firewall IP Telephony Router PIX Firewall Right and Left Voice GatewayVVVV Content Engine NAT
  • 46. How to model those middleboxes ? • In the official architecture, they do not exist • In reality... Physical Datalink Network Transport Application Physical Datalink Network Transport Application Physical Datalink Network TCP Physical Datalink Network Transport Application
  • 47. TCP segments processed by a router Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options IP TCP
  • 48. Network Address Translators • Preserves IP addresses by using private addresses in LAN – Packets's addresses are rewritten by NAT Private addresses Public addresses
  • 49. TCP segments processed by a NAT Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options

Editor's Notes

  1. This is the most widely used format, it is notably used to carry IP packets.
  2. The 10 Gbps zoo is much larger than this, see e.g. http://en.wikipedia.org/wiki/10_gigabit_Ethernet
  3. See [IEEE802Q] "IEEE Standards for Local and Metropolitan Area Networks: Virtual Bridged Local Area Networks", Draft Standard, P802.1Q/D9, February 20, 1998.
  4. Example 802.11b channel frequencies Channel Lower frequency Central frequency Upper frequency 1 2.401 2.412 2.423 2 2.404 2.417 2.428 3 2.411 2.422 2.433 4 2.416 2.427 2.438 5 2.421 2.432 2.443 6 2.426 2.437 2.448 7 2.431 2.442 2.453 8 2.436 2.447 2.458 9 2.441 2.452 2.463 10 2.446 2.457 2.468 11 2.451 2.462 2.473
  5. c