Application (web browser)

31
Application (web browser) HTML on HTTP TCP IP Application (web server) HTML on HTTP TCP IP User- space Kernel-space (operating- system) Socket layer (socket interface) NIC: Network Interface Card A real layered system End system End system Physical connector Physical connector Ethernet (Card and NIC driver) Ethernet (Card and NIC driver)

description

A real layered system. End system. End system. TCP. IP. Application (web browser). Application (web server). User-space. HTML on HTTP. HTML on HTTP. Socket layer (socket interface). TCP. IP. Kernel-space (operating-system). Ethernet. Ethernet. (Card and NIC driver). (Card and - PowerPoint PPT Presentation

Transcript of Application (web browser)

Page 1: Application (web browser)

Application(web browser)HTML on HTTP

TCP

IP

Application(web server)HTML on HTTP

TCP

IP

User-space

Kernel-space(operating-system)

Socket layer(socket interface)

NIC: Network Interface Card

A real layered system

End system End system

Physical connector Physical connector

Ethernet(Card andNIC driver)

Ethernet(Card andNIC driver)

Page 2: Application (web browser)

Application(web browser)HTML on HTTP

TCP

IP

Application(web server)HTML on HTTP

TCP

IP

NIC: Network Interface Card

A real layered system

End system End system

Physical connector Physical connectorPhysical connector Physical connector

Ethernet (data link-layer)

Ethernet(Card andNIC driver)

Ethernet(Card andNIC driver)

Page 3: Application (web browser)

NIC: Network Interface Card

A real layered system

End systemEnd system

Application(web browser)HTML on HTTP

TCP

IP

Ethernet(Card andNIC driver)

Physical connector Physical connector Physical connector

Ethernet (data link-layer)

Network (3)

Transport (4)

Application(web server)HTML on HTTP

TCP

IP

Physical connector

Ethernet(Card andNIC driver)

Network (3)

Transport (4)

Physical (1) Physical(1)

Data-Link (2)

Page 4: Application (web browser)

0 1 1 1 1 10000

0 1 1 1 1 10000

0 1 1 1 1 10000

Non-Return-to-Zero (NRZ)

Non-Return-to-Zero-Mark (NRZM) 1 = transition 0 = no transition

Non-Return-to-Zero Inverted (NRZI) (note transitions on the 1)

Line Coding Exampleswhere Baud=bit-rate

Page 5: Application (web browser)

0 1 0 1 1 11000

Non-Return-to-Zero (NRZ) (Baud = bit-rate)

Manchester example (Baud = 2 x bit-rate)

Clock

Line Coding Examples - II

0 1 0 1 1 11000

0 1 0 1 1 11000

Quad-level code (2 x Baud = bit-rate)

Clock

Page 6: Application (web browser)

0 1 0 1 1 11000

Line Coding Examples - III

Name 4b 5b Description0 0000 11110 hex data 01 0001 01001 hex data 12 0010 10100 hex data 23 0011 10101 hex data 34 0100 01010 hex data 45 0101 01011 hex data 56 0110 01110 hex data 67 0111 01111 hex data 78 1000 10010 hex data 89 1001 10011 hex data 9A 1010 10110 hex data AB 1011 10111 hex data BC 1100 11010 hex data CD 1101 11011 hex data DE 1110 11100 hex data EF 1111 11101 hex data F

Name 4b 5b DescriptionQ -NONE- 00000 QuietI -NONE- 11111 IdleJ -NONE- 11000 SSD #1K -NONE- 10001 SSD #2T -NONE- 01101 ESD #1R -NONE- 00111 ESD #2H -NONE- 00100 Halt

0 1 1 0 0 11010

Block coding transfers data with a fixedoverhead: 20% less information per Baud in the case of 4B/5B

So to send data at 100Mbps; the line rate(the Baud rate) must be 125Mbps.

1Gbps uses an 8b/10b codec; encoding entire bytes at a time but with 25% overhead

Data to send

Line-(Wire) representation

Page 7: Application (web browser)

Line Coding Examples - IV

ScramblingSequence

ScramblingSequence

CommunicationsChannelMessage Message

MessageXOR

Sequence

MessageXOR

Sequence

Page 8: Application (web browser)

Line Coding Examples - IV

ScramblingSequence

ScramblingSequence

CommunicationsChannelMessage Message

MessageXOR

Sequence

MessageXOR

Sequence

δ δ δ δ δ

e.g. (Self-synchronizing) scrambler

Page 9: Application (web browser)

Line Coding Examples – V(Hybrid)

δ δ δ δ δδ δ δ δ δ

…100111101101010001000101100111010001010010110101001001110101110100…

Inserted bits marking “start of frame/block/sequence”

…10011110110101000101000101100111010001010010110101001001110101110100…

Scramble / Transmit / Unscramble

…0100010110011101000101001011010100100111010111010010010111011101111000…

Identify (and remove) “start of frame/block/sequence”This gives you the Byte-delineations for free

64b/66b combines a scrambler and a framer. The start of frame is a pair of bits 01 or 10: 01 means “this frame is data” 10 means “this frame contains data and control” – control could be configuration information, length of encoded data or simply “this line is idle” (no data at all)

Page 10: Application (web browser)

Rule for adjusting W– If an ACK is received: W ← W+1/W– If a packet is lost: W ← W/2

Single Flow ARQ in operation

Only W packets may be outstanding

Page 11: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Page 12: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Physical layer interconnect(a connector to the rest of us , in this case it connects male connector to male connector)

Page 13: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Data-Link (2)

Physical (1) Physical (1)

Physical device – media convertorspeaks fluent Physical-layer

But only a bit of the Data-Link (Ethernet)

Page 14: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1) Physical (1)

Data-Link (2)

Data-Link device aka an Ethernet switchspeaks fluent Ethernet and often the extra/new

Ethernet-related standards (802.1q for VLAN and 802.1x for Network Access Control)

Page 15: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1) Physical (1)

Data-Link (2)

Data-Link device aka an Ethernet switchspeaks fluent Ethernet (two standards: wire and wireless!)

Another example with media conversion

Page 16: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Physical (1)

Data-Link (2)

Network (3)

Network device aka an IP Routerspeaks fluent IP and can convert between any data-link

and any physical standard to any other.

Page 17: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Physical (1)

Data-Link (2)

Network (3)

Transport-layer mapping (pretty uncommon)speaks fluent TCP and ???

?

Page 18: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Application device aka a Web-load balancerspeaks fluent HTTP

Page 19: Application (web browser)

ARPRecall from the primary slide-stack (slide 8-22) we need a mechanism for higher-layer entities to know what address to utilize in the lower entities.

ARP (address resolution protocol) provides a mechanism for establishing a host’s link-layer (e.g. Ethernet) address using only a network-address (e.g. IP address)

ARP is not limited to either Ethernet or IP; although that is the most common current use.

A linux machine’s ARP table can be shown using the command arp -a

Page 20: Application (web browser)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Network (3)

Transport (4)

Session (5)

Presentation (6)

Application (7)

Physical (1)

Data-Link (2)

Physical (1)

Consider the following situation:

Page 21: Application (web browser)

ARP

H1 H2 H3

H4 H5 H6

H7 H8 H9

H10 H11 H12

Switch

D ff.ff.ff.ff.ff.ffSP 128.187.171.2SH fe.34.56.32.d5.29DP 128.187.174.10DH 0.0.0.0.0.0

H10= IP 128.187.174.10, Ethernet 44.fe.34.56.32.d5

D ff.ff.ff.ff.ff.ffSP 128.187.171.2SH fe.34.56.32.d5.29DP 128.187.174.10DH 0.0.0.0.0.0

D ff.ff.ff.ff.ff.ffSP 128.187.171.2SH fe.34.56.32.d5.29DP 128.187.174.10DH 0.0.0.0.0.0

D ff.ff.ff.ff.ff.ffSP 128.187.171.2SH fe.34.56.32.d5.29DP 128.187.174.10DH 0.0.0.0.0.0

D fe.34.56.32.d5.29SP 128.187.174.10SH 44.fe.34.56.32.d5DP 128.187.171.2DH fe.34.56.32.d5.29

D fe.34.56.32.d5.29SP 128.187.174.10SH 44.fe.34.56.32.d5DP 128.187.171.2DH fe.34.56.32.d5.29

D 128.187.174.10D 44.fe.34.56.32.d5 S 128.187.171.2S fe.34.56.32.d5.29

D 128.187.174.10D 44.fe.34.56.32.d5 S 128.187.171.2S fe.34.56.32.d5.29

An Ethernet (switch) example

Page 22: Application (web browser)

Notes

• ARP table entries timeout in about 10 minutes

ARP table rules:• update table with source when you are the

target• update table if you already have an entry• do not refresh table entries upon reference

Page 23: Application (web browser)

CIDR and Longest Prefix Matches The IP address space is broken into line segments. Each line segment is described by a prefix. A prefix is of the form x/y where x indicates the prefix of all addresses in

the line segment, and y indicates the length of the segment. e.g. The prefix 128.9/16 represents the line segment containing

addresses in the range: 128.9.0.0 … 128.9.255.255.

0 232-1

128.9/16

128.9.0.0

216

142.12/19

65/8

128.9.16.14

Page 24: Application (web browser)

Classless Interdomain Routing (CIDR)

0 232-1

128.9/16

128.9.16.14

128.9.16/20128.9.176/20

128.9.19/24

128.9.25/24

Most specific route = “longest matching prefix”

Page 25: Application (web browser)

HDDisplay

Topology of Routers

VideoServer

Page 26: Application (web browser)

Subnet Configuration

.1.1

.1.2.3.1

.30.2

.4.1

.4.2

.6.1.3.2

.7.1

.7.2

.9.1

.6.2

.10.1

.10.2

.12.1

.9.2

.13.1

.13.2

.15.1

.12.2

.16.1

.16.2.15.2

.28.1

.28.2 .27.1

.30.1

.25.1

.25.2.24.1

.27.2

.22.1

.22.2.21.1

.24.2

.19.1

.19.2

.17.1

.21.2.18.2

.5.1 .8.1 .11.1 .14.1 .18.1

.20.1.23.1.26.1

.29.1

.2.1

Video ClientShortest Path

Video Server

Page 27: Application (web browser)

Step 1 – Observe the Routing Tables

The router is already configured and running on your machines

The routing table has converged to the routing decisions with minimum number of hops

Next, break a link …

Page 28: Application (web browser)

Step 2 - Dynamic Re-routingBreak the link between

video server and video client

Routers re-route traffic around the broken link and video continues playing

.1.1

.1.2

.3.1

.30.2

.4.1

.4.2

.6.1.3.2

.7.1

.7.2

.9.1

.6.2

.10.1

.10.2

.12.1

.9.2

.13.1

.13.2

.15.1

.12.2

.16.1

.16.2.15.2

.28.1

.28.2.27.1

.30.1

.25.1

.25.2.24.1

.27.2

.22.1

.22.2.21.1

.24.2

.19.1

.19.2

.17.1

.21.2.18.2

.5.1 .8.1 .11.1 .14.1 .18.1

.20.1

.23.1.26.1

.29.1

.2.1

Page 29: Application (web browser)

Working IP Router

– Observe PW-OSPF re-routing traffic around a failure

– Video is temporarily disrupted then resumes playing as TCP recovers from packet-loss

Page 30: Application (web browser)

Collision detection can take as long as 2τ

CSMA/CD Ethernet (10Mbps circa 1980)

A B

A B

A B

A B

Packet starts at time 0

Packet arrives at B at τ-ε

Packet starts from B at time τCollision shortly thereafter

Noise (the collision) arrivesat A at time 2τ

Page 31: Application (web browser)

AUser

BCDE

In pure Aloha, framesare transmitted at arbitrary (and uncoordinated) times

Time