SlideShare a Scribd company logo
Week 5 
Sharing resources 
Internet applications
Agenda 
• Sharing resources 
• Medium Access Control 
• Congestion Control 
• Internet applications
ALOHA 
N=1; 
while ( N<= max) do 
send frame; 
wait for ack on return channel or timeout: 
if ack on return channel 
exit while; 
else 
/* timeout */ 
/* retransmission is needed */ 
wait for random time; 
N=N+1; 
end do 
/* too many attempts */
CSMA 
N=1; 
while ( N<= max) do 
wait until channel becomes free; 
send frame immediately; 
wait for ack or timeout: 
if ack received 
exit while; 
else 
/* timeout */ 
/* retransmission is needed */ 
N=N+1; 
end do 
/* too many attempts */
CSMA/CD 
• Basic solution 
N=1; 
while ( N<= max) do 
wait until channel becomes free; 
send frame and listen; 
wait until (end of frame) or (collision) 
if collision detected 
stop transmitting; 
/* after a special jam signal */ 
else 
/* no collision detected */ 
wait for interframe delay; 
exit while; 
N=N+1; 
end do 
/* too many attempts */
Example 
A B 
Start of frame 
1 
Frame is propagated on LAN (5 microsecond per kilometer) 
2 
Frame stops at left side and first bit reaches B 
3 
4 
Frame leaves the LAN
Collisions 
A B 
Frame starts at A and B almost at the same time 
1 
2 
Collision : at this point on the 
shared medium, it is impossible 
to decode the signal 
A detects the collision and 
stops transmitting its frame 
3
Can we detect all 
collisions ? 
A B 
A and B send a small frame almost at the same time 
1 
The two frame collide in the middle of the medium 
2 
A did not notice any collision 
B did not notice any collision 
They both consider that their frames were received correctly 
3
Worst case 
A B 
Start of 1 the frame sent by A 
3 
After t seconds, A’s frame reaches B 
A time  t-e, B starts to transmit its own frame 
B notices the collision immediately and stops transmitting 
A detects collision at time t+t-e 
2
How to detect all 
collisions ? 
• All nodes must always transmit during at 
least the two way delay (2∗τ) 
• If bandwidth is fixed => minimum frame 
size
How to react after 
collision ? 
• Exponential backoff 
• Wait random time after collision 
• Divide time in slots Backoff (slot = (2∗τ)) 
• 1st collision : wait 0 or 1 slot 
• 2nd collision :wait 0, 1,2 or 3 slots 
• ith collision : wait 0..2i-1 slots
CSMA/CD 
• Final solution 
N=1; 
while ( N<= max) do 
wait until channel becomes free; 
send frame and listen; 
wait until (end of frame) or (collision) 
if collision detected 
stop transmitting; 
/* after a special jam signal */ 
k = min (10, N); 
r = random(0, 2k – 1); 
wait for r time slots; 
else 
/* no collision detected */ 
wait for interframe delay; 
exit while; 
N=N+1; 
end do 
/* too many attempts */
CSMA/CA 
• A MAC for wireless networks 
• Cannot always detect collisions 
• Improvements to CSMA 
• Initial delay to transmit (EIFS) 
• Min. delay between frames (DIFS) 
• Delay between frame and ack (SIFS)
CSMA/CA : receiver 
While (true) 
{ 
Wait for data frame; 
if not(duplicate) 
{ deliver (frame) } 
wait during SIFS; 
send ack (frame) ; 
}
CSMA/CA : sender 
N=1; 
while ( N<= max) do 
if (previous frame corrupted) 
{ wait until channel free during t>=EIFS; } 
else 
{ wait until endofframe; 
wait until channel free during t>=DIFS; } 
send data frame ; 
wait for ack or timeout: 
if ack received 
exit while; 
else 
/* timeout retransmission is needed */ 
N=N+1; 
end do 
/* too many attempts */
Example 
A B C 
DIFS 
Data frame 
Busy 
SIFS 
ACK frame 
DIFS 
Data frame
Collisions 
A B C 
DIFS 
DIFS 
Data frame 
Busy 
Busy Data frame 
Timeout Timeout 
Data frame 
Busy 
Data frame
CSMA/CA : sender 
N=1; 
while ( N<= max) do 
if (previous frame corruped) 
{ wait until channel free during t>=EIFS; } 
else 
{ wait until endofframe; 
wait until channel free during t>=DIFS; } 
backoff_time = int(random[0,min(255,7*2N-1)])*T 
wait(channel free during backoff_time) 
send data frame ; 
wait for ack or timeout: 
if ack received 
exit while; 
else /* timeout retransmission is needed */ 
N=N+1; } 
end do
Backoff 
A B C 
DIFS 
DIFS 
Backoff[0,7] 
Backoff[0,7] 
Channel busy! 
Busy 
Data frame 
Data frame 
SIFS 
Ack frame 
Remaining 
backoff
HIdden station problem 
A 
B 
Hears A and C 
C 
Only hears B, not C Hears B, but not A
Hidden station 
• How to solve it ? 
• Sender reserves time slot 
• Receiver confirms the time reservation
RTS/CTS 
A B C 
DIFS+Backoff 
Busy[ 
100microsec+ 
SIFS+ 
CTS+ 
SIFS+ 
ACK 
] 
RTS [100 microsec] 
SIFS 
CTS[100microsec] 
Data [100 microsec] 
SIFS 
ACK frame 
SIFS
Agenda 
• Sharing resources 
• Medium Access Control 
• Congestion Control 
• Internet applications
Max-min fairness 
• Fairness definition for networks 
• a max-min allocation of bandwidth is an 
allocation of bandwidth which maximises the 
allocation of bandwidth to the sources 
receiving the smallest allocation 
• Property 
• a max-min fair allocation is such that in 
order to increase the bandwidth allocated to 
one source, it is necessary to decrease the 
bandwidth allocated to another source 
which already receives a lower allocation
Max-min fairness 
• a max-min allocation maximises the 
allocation of bandwidth to the sources 
receiving the smallest allocation 
• Property 
• to increase the bandwidth allocated to 
one source, it is necessary to decrease 
the bandwidth allocated to another 
source which already receives a lower 
allocation
Example 
R 
R 
D1 D3 D5 
R 
R 
R 
1000 Mbps 
100 Mbps 
S1 
S2 
S3 S4 S5 S6 S7 S8 
• Max-min fair bandwidth allocation 
D2 
D4 
D6 
D7 
D8 
Link1 
Link2 
Link3 
Link4
Router output port 
Q[1] 
Q[2] 
Q[3] 
Q[N] 
Flow identification 
Input links 
Output link 
Flow identification 
Identifies the TCP/UDP flow 
to which the arriving packet 
belongs 
Buffer acceptance 
accepts or rejects 
incoming packets 
Queuing strategy 
Logical organization of the 
router's buffers 
Scheduler 
Chooses the packet to 
be transmitted first on 
the output link
Round robin 
Flow 1 
Flow 2 
Flow 3 
Flow 4 
Flow 5 
Flow 1 
Flow 2 
Flow 3 
Flow N 
Scheduler : 
F1 
F2 
FN 
F4 F3
Example 
F1 
F2 
F3 
Flow1(L=1) 
Flow2 (L=2) 
Flow3 (L=1) F1 
F3 F2 
Flow1 and Flow3 send packets of size 1 
Flow 2 sends packets of size 2
Adapting to different 
bandwidth
Self-clocking
The congestion 
problem
How to detect 
congestion ? 
• Packet losses 
• Routers add information to packets 
• Forward binary feedback 
• Backward binary feedback 
• Rate feedback
Congestion control 
• Additive Increase / Multiplicative Decrease 
# Additive Increase Multiplicative Decrease 
if congestion : 
rate=rate*betaC # MD, betaC<1 
else 
rate=rate+alphaN # AI
Window-based 
Congestion control 
# Initialisation 
cwin = 1 # congestion window measured in segments 
# Ack arrival 
if newack : # new ack, no congestion 
# increase cwin by one every rtt 
cwin = cwin+ (1/cwin) 
else: 
# no increase 
Congestion detected: 
cwnd=cwin/2 # only once per rtt
Agenda 
• Sharing resources 
• Internet applications 
• DNS 
• Email 
• Web 
• Remote Procedure Calls
Internet 
Transport services 
• Service provided by UDP 
• Connectionless, unreliable 
• Service provided by TCP 
• Connection-oriented 
• reliable bytestream
Internet addresses 
• IPv4 
• 32 bits, written as a.b.c.d, e.g. 
130.104.1.1 
• IPv6 
• 128 bits, written in hexadecimal notation, 
e.g. 2001:6a8:3080:1::3
UDP service 
UDP service 
Applic. 
2 
Applic. 
1 
Identification 
IP address : 2001:4860:a005::68 
Protocol : UDP 
Port : 53 
Identification: 
IP address : 
2001:6a8:3080:2:217:f2ff:fed6:65c0 
Protocol : UDP 
Port : 1234 
• Identification of an application 
• IP address + port number
TCP service 
TCP service 
• Identification of an application 
• IP address + TCP + port number 
Applic. 
2 
Applic. 
1 
Identification 
IP address: 2001:6a8:3080:1::3 
Protocol : TCP 
Port : 80 
Identification: 
IP address : 
2a02:2788:2c4:16f:226:bbff:fe09:266e 
Protocol : TCP 
Port : 9876
Agenda 
• Sharing resources 
• Internet applications 
• DNS 
• Email 
• Web 
• Remote Procedure Calls
The Domain Name 
System 
• Hierarchy of domain names 
• Domain Name servers 
• DNS resolvers
DNS messages 
Each DNS request contains a number that will be returned in the 
response by the server to allow the client to match the request. 
32 bits 
Identification Flags 
12 bytes Number of questions 
Number of answers 
Number of authority Number of additional 
Questions 
(variable number of resource records) 
Answers 
(variable number of resource records) 
Authority 
(variable number of resource records) 
Additional information 
(variable number of resource records) 
lQuestion/Response 
lRecursive question or not 
lAuthoritative answer or not 
lPossible error
DNS Resource Records 
• A 
• IPv4 address 
• AAAA 
• IPv6 address 
• NS 
• Name server
Agenda 
• Sharing resources 
• Internet applications 
• DNS 
• Email 
• Web 
• Remote Procedure Calls
Simplified architecture 
Alice’s 
email server 
b.net ‘s 
email server 
Alice@a.net Bob@b.net 
Alice sends her email 
to local mail forwarder 
Alice’s server sends email 
to b.net’s MX 
Bob retrieves message 
from his server
Message format 
Exp: ABC S.A. 
Rue de Fer 10 
5000 Namur 
DEF Corp. 
Steel street 9 
WA78 AX London 
Grande Bretagne 
From: president@abc.be 
To: ceo@def.com 
Subject: Hello 
Date : 27 Sept. 1999 0901 
Dear Sir, 
Bla Bla Bla... 
Header 
Message 
body
Header format 
• At least three lines that end with <CRLF> 
• From: sender@domain 
• To:recipient@domain 
• Date: <creation date of message> 
• Optional fields 
• Subject: , cc: ,Message-ID:, Received: In- 
Reply-To: , ... 
• Header ends with empty line (<CRLF>)
Email protocols 
SMTP 
SMTP Email 
a.net’s 
SMTP server 
b.net’s SMTP 
server 
retrieval 
Alice@a.net Bob@b.net
Agenda 
• Sharing resources 
• Internet applications 
• DNS 
• Email 
• Web 
• Remote Procedure Calls
Simplified architecture 
Client 
(browser) 
Server www.machin.be 
Server www.truc.fr 
Query 
Information
Key elements of the 
web 
• URL : An addressing scheme that allows to 
identify any document stored on a server 
• HTML : An hypertext language to easily 
write documents with hypertext links 
• HTTP : An efficient and lightweight 
protocol to exchange documents 
• Servers 
• Clients (browsers)
URL 
• syntax : <protocol>://<document> 
• http is the most common 
• document indicates the server and the 
location of the document 
• <user>:<password>@<server>:<port>/ 
<path>
HTML 
<HTML> 
<HEAD> 
<TITLE>HTML test page</TITLE> 
</HEAD> 
<BODY> 
<IMG SRC="http://www.images.be/logo.gif"> 
<H1>Web servers from UCL UCL<P></H1> 
<HR> 
<UL> 
<LI><A HREF="http://www.uclouvain.be">UCL</A> 
<LI><A HREF="http://www.info.ucl.ac.be">CSE Dept.</A> 
<LI><A HREF="http://www.math.ucl.ac.be">Math</A> 
</UL> 
</BODY> 
</HTML> 
Header 
Body 
Image on remote server 
First level title 
External hypertext link
HTTP 
Client 
Server 
Request 
Method 
Header 
CRLF 
MIME Document 
Method 
GET 
lPOST 
l... 
Header contains additional information 
about request sent by client 
Response 
Status line 
Header 
CRLF 
MIME Document 
Header contains information about server 
and optional parameters specific to response 
Success or failure 
HTTP is a stateless protocol, server does not maintain any state from 
one request to another
HTTP : Example 
Request 
Client 
Server 
GET /index.html HTTP/1.1 www.info.ucl.ac.be 
Host: www.info.ucl.ac.be 
CRLF 
Response 
HTTP/1.1 200 OK 
Date: Fri, 10 Sep 1999 14:29:19 GMT 
Server: Apache/1.3.0 (Unix) ApacheJServ/1.0b5 
Last-Modified: Thu, 02 Sep 1999 11:50:50 GMT 
Content-Length: 1224 
Content-Type: text/html 
CRLF 
<HTML> 
. . . 
</HTML>
Agenda 
• Sharing resources 
• Internet applications 
• DNS 
• Email 
• Web 
• Remote Procedure Calls

More Related Content

What's hot

Part 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resources
Olivier Bonaventure
 
Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1
Olivier Bonaventure
 
Part 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCPPart 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCP
Olivier Bonaventure
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
Olivier Bonaventure
 
Surviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview QuestionsSurviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview Questions
Duane Bodle
 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
Olivier Bonaventure
 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6
Olivier Bonaventure
 
Future Internet protocols
Future Internet protocolsFuture Internet protocols
Future Internet protocols
Olivier Bonaventure
 
12 ethernet-wifi
12 ethernet-wifi12 ethernet-wifi
12 ethernet-wifi
Olivier Bonaventure
 
Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocols
Olivier Bonaventure
 
Network interview questions
Network interview questionsNetwork interview questions
Network interview questions
rajasekar1712
 
TCPLS presentation @ietf 109
TCPLS presentation @ietf 109TCPLS presentation @ietf 109
TCPLS presentation @ietf 109
Olivier Bonaventure
 
IPv6 Segment Routing : an end-to-end solution ?
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
 
10 routing-bgp
10 routing-bgp10 routing-bgp
10 routing-bgp
Olivier Bonaventure
 
Part 2 : reliable transmission and building a network
Part 2 : reliable transmission and building a networkPart 2 : reliable transmission and building a network
Part 2 : reliable transmission and building a network
Olivier Bonaventure
 
11 bgp-ethernet
11 bgp-ethernet11 bgp-ethernet
11 bgp-ethernet
Olivier Bonaventure
 
(NET404) Making Every Packet Count
(NET404) Making Every Packet Count(NET404) Making Every Packet Count
(NET404) Making Every Packet Count
Amazon Web Services
 
16 coms 525 tcpip - routing protocols -all
16    coms 525 tcpip - routing protocols -all16    coms 525 tcpip - routing protocols -all
16 coms 525 tcpip - routing protocols -all
Palanivel Kuppusamy
 
Tcpdump
TcpdumpTcpdump
Tcpdump
Mohamed Gamel
 
Network emulator
Network emulatorNetwork emulator
Network emulator
jeromy fu
 

What's hot (20)

Part 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resources
 
Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1
 
Part 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCPPart 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCP
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
 
Surviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview QuestionsSurviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview Questions
 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6
 
Future Internet protocols
Future Internet protocolsFuture Internet protocols
Future Internet protocols
 
12 ethernet-wifi
12 ethernet-wifi12 ethernet-wifi
12 ethernet-wifi
 
Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocols
 
Network interview questions
Network interview questionsNetwork interview questions
Network interview questions
 
TCPLS presentation @ietf 109
TCPLS presentation @ietf 109TCPLS presentation @ietf 109
TCPLS presentation @ietf 109
 
IPv6 Segment Routing : an end-to-end solution ?
IPv6 Segment Routing : an end-to-end solution ?IPv6 Segment Routing : an end-to-end solution ?
IPv6 Segment Routing : an end-to-end solution ?
 
10 routing-bgp
10 routing-bgp10 routing-bgp
10 routing-bgp
 
Part 2 : reliable transmission and building a network
Part 2 : reliable transmission and building a networkPart 2 : reliable transmission and building a network
Part 2 : reliable transmission and building a network
 
11 bgp-ethernet
11 bgp-ethernet11 bgp-ethernet
11 bgp-ethernet
 
(NET404) Making Every Packet Count
(NET404) Making Every Packet Count(NET404) Making Every Packet Count
(NET404) Making Every Packet Count
 
16 coms 525 tcpip - routing protocols -all
16    coms 525 tcpip - routing protocols -all16    coms 525 tcpip - routing protocols -all
16 coms 525 tcpip - routing protocols -all
 
Tcpdump
TcpdumpTcpdump
Tcpdump
 
Network emulator
Network emulatorNetwork emulator
Network emulator
 

Similar to 5 sharing-app

sliding window protocol for datalink layer.ppt
sliding window protocol for datalink layer.pptsliding window protocol for datalink layer.ppt
sliding window protocol for datalink layer.ppt
ManimegalaM3
 
MAC.ppt
MAC.pptMAC.ppt
MAC.ppt
maheshnanda14
 
MAC.ppt
MAC.pptMAC.ppt
datalink.ppt
datalink.pptdatalink.ppt
datalink.ppt
Jayaprasanna4
 
Computer networks unit ii
Computer networks    unit iiComputer networks    unit ii
Computer networks unit ii
JAIGANESH SEKAR
 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
Olivier Bonaventure
 
KandR_TCP (1).ppt notes for congestion control
KandR_TCP (1).ppt    notes for congestion controlKandR_TCP (1).ppt    notes for congestion control
KandR_TCP (1).ppt notes for congestion control
GOKULKANNANMMECLECTC
 
6610-l14.pptx
6610-l14.pptx6610-l14.pptx
6610-l14.pptx
ArvindRamesh22
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
G Prachi
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
Olivier Bonaventure
 
link-medium-access-control.pptx
link-medium-access-control.pptxlink-medium-access-control.pptx
link-medium-access-control.pptx
patrickwang85
 
What every Java developer should know about network?
What every Java developer should know about network?What every Java developer should know about network?
What every Java developer should know about network?
aragozin
 
Week8 lec1-bscs1
Week8 lec1-bscs1Week8 lec1-bscs1
Week8 lec1-bscs1
syedhaiderraza
 
presentationphysicallyer.pdf talked about computer networks
presentationphysicallyer.pdf talked about computer networkspresentationphysicallyer.pdf talked about computer networks
presentationphysicallyer.pdf talked about computer networks
HetfieldLee
 
Mediumaccesscontrol
MediumaccesscontrolMediumaccesscontrol
Mediumaccesscontrol
Vk Sreedhar
 
lecture06-link-layer.pdf
lecture06-link-layer.pdflecture06-link-layer.pdf
lecture06-link-layer.pdf
Enics
 
Transmission control protocol ...............................
Transmission control protocol ...............................Transmission control protocol ...............................
Transmission control protocol ...............................
SwatiHans10
 
MACPresentation based on medium access control mechanism
MACPresentation based on medium access control mechanismMACPresentation based on medium access control mechanism
MACPresentation based on medium access control mechanism
supriyaharlapur1
 
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Hamidreza Bolhasani
 
Dc ch07 : error control and data link control
Dc ch07 : error control and data link controlDc ch07 : error control and data link control
Dc ch07 : error control and data link control
Syaiful Ahdan
 

Similar to 5 sharing-app (20)

sliding window protocol for datalink layer.ppt
sliding window protocol for datalink layer.pptsliding window protocol for datalink layer.ppt
sliding window protocol for datalink layer.ppt
 
MAC.ppt
MAC.pptMAC.ppt
MAC.ppt
 
MAC.ppt
MAC.pptMAC.ppt
MAC.ppt
 
datalink.ppt
datalink.pptdatalink.ppt
datalink.ppt
 
Computer networks unit ii
Computer networks    unit iiComputer networks    unit ii
Computer networks unit ii
 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
 
KandR_TCP (1).ppt notes for congestion control
KandR_TCP (1).ppt    notes for congestion controlKandR_TCP (1).ppt    notes for congestion control
KandR_TCP (1).ppt notes for congestion control
 
6610-l14.pptx
6610-l14.pptx6610-l14.pptx
6610-l14.pptx
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
 
link-medium-access-control.pptx
link-medium-access-control.pptxlink-medium-access-control.pptx
link-medium-access-control.pptx
 
What every Java developer should know about network?
What every Java developer should know about network?What every Java developer should know about network?
What every Java developer should know about network?
 
Week8 lec1-bscs1
Week8 lec1-bscs1Week8 lec1-bscs1
Week8 lec1-bscs1
 
presentationphysicallyer.pdf talked about computer networks
presentationphysicallyer.pdf talked about computer networkspresentationphysicallyer.pdf talked about computer networks
presentationphysicallyer.pdf talked about computer networks
 
Mediumaccesscontrol
MediumaccesscontrolMediumaccesscontrol
Mediumaccesscontrol
 
lecture06-link-layer.pdf
lecture06-link-layer.pdflecture06-link-layer.pdf
lecture06-link-layer.pdf
 
Transmission control protocol ...............................
Transmission control protocol ...............................Transmission control protocol ...............................
Transmission control protocol ...............................
 
MACPresentation based on medium access control mechanism
MACPresentation based on medium access control mechanismMACPresentation based on medium access control mechanism
MACPresentation based on medium access control mechanism
 
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)
 
Dc ch07 : error control and data link control
Dc ch07 : error control and data link controlDc ch07 : error control and data link control
Dc ch07 : error control and data link control
 

More from Olivier Bonaventure

Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
Olivier Bonaventure
 
Part10-router.pptx
Part10-router.pptxPart10-router.pptx
Part10-router.pptx
Olivier Bonaventure
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
Olivier Bonaventure
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
Olivier Bonaventure
 
Part11-lan.pptx
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptx
Olivier Bonaventure
 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
Olivier Bonaventure
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
Olivier Bonaventure
 
Part7-routing.pptx
Part7-routing.pptxPart7-routing.pptx
Part7-routing.pptx
Olivier Bonaventure
 
Part6-network-routing.pptx
Part6-network-routing.pptxPart6-network-routing.pptx
Part6-network-routing.pptx
Olivier Bonaventure
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
Olivier Bonaventure
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
Olivier Bonaventure
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
Olivier Bonaventure
 
Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
Olivier Bonaventure
 
A personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking research
Olivier Bonaventure
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
Olivier Bonaventure
 
Part 10 : Routing in IP networks and interdomain routing with BGP
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
Olivier Bonaventure
 
Part 3 : building a network and supporting applications
Part 3 : building a network and supporting applicationsPart 3 : building a network and supporting applications
Part 3 : building a network and supporting applications
Olivier Bonaventure
 
Making our networking stack truly extensible
Making our networking stack truly extensible Making our networking stack truly extensible
Making our networking stack truly extensible
Olivier Bonaventure
 

More from Olivier Bonaventure (18)

Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
 
Part10-router.pptx
Part10-router.pptxPart10-router.pptx
Part10-router.pptx
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
 
Part11-lan.pptx
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptx
 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
 
Part7-routing.pptx
Part7-routing.pptxPart7-routing.pptx
Part7-routing.pptx
 
Part6-network-routing.pptx
Part6-network-routing.pptxPart6-network-routing.pptx
Part6-network-routing.pptx
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
 
Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
 
A personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking research
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
 
Part 10 : Routing in IP networks and interdomain routing with BGP
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
 
Part 3 : building a network and supporting applications
Part 3 : building a network and supporting applicationsPart 3 : building a network and supporting applications
Part 3 : building a network and supporting applications
 
Making our networking stack truly extensible
Making our networking stack truly extensible Making our networking stack truly extensible
Making our networking stack truly extensible
 

Recently uploaded

Python programming Introduction about Python
Python programming Introduction about PythonPython programming Introduction about Python
Python programming Introduction about Python
Senthil Vit
 
李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<
李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<
李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<
amzhoxvzidbke
 
Online airline reservation system project report.pdf
Online airline reservation system project report.pdfOnline airline reservation system project report.pdf
Online airline reservation system project report.pdf
Kamal Acharya
 
Software Engineering and Project Management - Activity Planning
Software Engineering and Project Management - Activity PlanningSoftware Engineering and Project Management - Activity Planning
Software Engineering and Project Management - Activity Planning
Prakhyath Rai
 
Concepts Basic/ Technical Electronic Material.pdf
Concepts Basic/ Technical Electronic Material.pdfConcepts Basic/ Technical Electronic Material.pdf
Concepts Basic/ Technical Electronic Material.pdf
OBD II
 
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptxPresentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
Er. Kushal Ghimire
 
ANATOMY OF SOA - Thomas Erl - Service Oriented Architecture
ANATOMY OF SOA - Thomas Erl - Service Oriented ArchitectureANATOMY OF SOA - Thomas Erl - Service Oriented Architecture
ANATOMY OF SOA - Thomas Erl - Service Oriented Architecture
Divya Rajasekar
 
Traffic Engineering-MODULE-1 vtu syllabus.pptx
Traffic Engineering-MODULE-1 vtu syllabus.pptxTraffic Engineering-MODULE-1 vtu syllabus.pptx
Traffic Engineering-MODULE-1 vtu syllabus.pptx
mailmad391
 
Presentation python programming vtu 6th sem
Presentation python programming vtu 6th semPresentation python programming vtu 6th sem
Presentation python programming vtu 6th sem
ssuser8f6b1d1
 
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
Jim Mimlitz, P.E.
 
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
YanKing2
 
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATA
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATAFINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATA
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATA
kevig
 
readers writers Problem in operating system
readers writers Problem in operating systemreaders writers Problem in operating system
readers writers Problem in operating system
VADAPALLYPRAVEENKUMA1
 
PPT_grt.pptx engineering criteria grt for accrediation
PPT_grt.pptx engineering criteria  grt for accrediationPPT_grt.pptx engineering criteria  grt for accrediation
PPT_grt.pptx engineering criteria grt for accrediation
SHALINIRAJAN20
 
11th International Conference on Computer Science, Engineering and Informatio...
11th International Conference on Computer Science, Engineering and Informatio...11th International Conference on Computer Science, Engineering and Informatio...
11th International Conference on Computer Science, Engineering and Informatio...
ijcisjournal
 
OME754 – INDUSTRIAL SAFETY - unit notes.pptx
OME754 – INDUSTRIAL SAFETY - unit notes.pptxOME754 – INDUSTRIAL SAFETY - unit notes.pptx
OME754 – INDUSTRIAL SAFETY - unit notes.pptx
shanmugamram247
 
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
PradeepKumarSK3
 
Adv. Digital Signal Processing LAB MANUAL.pdf
Adv. Digital Signal Processing LAB MANUAL.pdfAdv. Digital Signal Processing LAB MANUAL.pdf
Adv. Digital Signal Processing LAB MANUAL.pdf
T.D. Shashikala
 
The Control of Relative Humidity & Moisture Content in The Air
The Control of Relative Humidity & Moisture Content in The AirThe Control of Relative Humidity & Moisture Content in The Air
The Control of Relative Humidity & Moisture Content in The Air
Ashraf Ismail
 
Top EPC companies in India - Best EPC Contractor
Top EPC companies in India - Best EPC  ContractorTop EPC companies in India - Best EPC  Contractor
Top EPC companies in India - Best EPC Contractor
MangeshK6
 

Recently uploaded (20)

Python programming Introduction about Python
Python programming Introduction about PythonPython programming Introduction about Python
Python programming Introduction about Python
 
李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<
李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<
李易峰祝绪丹做爱视频流出【网芷:ht28.co】可爱学生妹>>>[网趾:ht28.co】]<<<
 
Online airline reservation system project report.pdf
Online airline reservation system project report.pdfOnline airline reservation system project report.pdf
Online airline reservation system project report.pdf
 
Software Engineering and Project Management - Activity Planning
Software Engineering and Project Management - Activity PlanningSoftware Engineering and Project Management - Activity Planning
Software Engineering and Project Management - Activity Planning
 
Concepts Basic/ Technical Electronic Material.pdf
Concepts Basic/ Technical Electronic Material.pdfConcepts Basic/ Technical Electronic Material.pdf
Concepts Basic/ Technical Electronic Material.pdf
 
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptxPresentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
 
ANATOMY OF SOA - Thomas Erl - Service Oriented Architecture
ANATOMY OF SOA - Thomas Erl - Service Oriented ArchitectureANATOMY OF SOA - Thomas Erl - Service Oriented Architecture
ANATOMY OF SOA - Thomas Erl - Service Oriented Architecture
 
Traffic Engineering-MODULE-1 vtu syllabus.pptx
Traffic Engineering-MODULE-1 vtu syllabus.pptxTraffic Engineering-MODULE-1 vtu syllabus.pptx
Traffic Engineering-MODULE-1 vtu syllabus.pptx
 
Presentation python programming vtu 6th sem
Presentation python programming vtu 6th semPresentation python programming vtu 6th sem
Presentation python programming vtu 6th sem
 
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
 
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
 
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATA
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATAFINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATA
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATA
 
readers writers Problem in operating system
readers writers Problem in operating systemreaders writers Problem in operating system
readers writers Problem in operating system
 
PPT_grt.pptx engineering criteria grt for accrediation
PPT_grt.pptx engineering criteria  grt for accrediationPPT_grt.pptx engineering criteria  grt for accrediation
PPT_grt.pptx engineering criteria grt for accrediation
 
11th International Conference on Computer Science, Engineering and Informatio...
11th International Conference on Computer Science, Engineering and Informatio...11th International Conference on Computer Science, Engineering and Informatio...
11th International Conference on Computer Science, Engineering and Informatio...
 
OME754 – INDUSTRIAL SAFETY - unit notes.pptx
OME754 – INDUSTRIAL SAFETY - unit notes.pptxOME754 – INDUSTRIAL SAFETY - unit notes.pptx
OME754 – INDUSTRIAL SAFETY - unit notes.pptx
 
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
 
Adv. Digital Signal Processing LAB MANUAL.pdf
Adv. Digital Signal Processing LAB MANUAL.pdfAdv. Digital Signal Processing LAB MANUAL.pdf
Adv. Digital Signal Processing LAB MANUAL.pdf
 
The Control of Relative Humidity & Moisture Content in The Air
The Control of Relative Humidity & Moisture Content in The AirThe Control of Relative Humidity & Moisture Content in The Air
The Control of Relative Humidity & Moisture Content in The Air
 
Top EPC companies in India - Best EPC Contractor
Top EPC companies in India - Best EPC  ContractorTop EPC companies in India - Best EPC  Contractor
Top EPC companies in India - Best EPC Contractor
 

5 sharing-app

  • 1. Week 5 Sharing resources Internet applications
  • 2. Agenda • Sharing resources • Medium Access Control • Congestion Control • Internet applications
  • 3. ALOHA N=1; while ( N<= max) do send frame; wait for ack on return channel or timeout: if ack on return channel exit while; else /* timeout */ /* retransmission is needed */ wait for random time; N=N+1; end do /* too many attempts */
  • 4. CSMA N=1; while ( N<= max) do wait until channel becomes free; send frame immediately; wait for ack or timeout: if ack received exit while; else /* timeout */ /* retransmission is needed */ N=N+1; end do /* too many attempts */
  • 5. CSMA/CD • Basic solution N=1; while ( N<= max) do wait until channel becomes free; send frame and listen; wait until (end of frame) or (collision) if collision detected stop transmitting; /* after a special jam signal */ else /* no collision detected */ wait for interframe delay; exit while; N=N+1; end do /* too many attempts */
  • 6. Example A B Start of frame 1 Frame is propagated on LAN (5 microsecond per kilometer) 2 Frame stops at left side and first bit reaches B 3 4 Frame leaves the LAN
  • 7. Collisions A B Frame starts at A and B almost at the same time 1 2 Collision : at this point on the shared medium, it is impossible to decode the signal A detects the collision and stops transmitting its frame 3
  • 8. Can we detect all collisions ? A B A and B send a small frame almost at the same time 1 The two frame collide in the middle of the medium 2 A did not notice any collision B did not notice any collision They both consider that their frames were received correctly 3
  • 9. Worst case A B Start of 1 the frame sent by A 3 After t seconds, A’s frame reaches B A time t-e, B starts to transmit its own frame B notices the collision immediately and stops transmitting A detects collision at time t+t-e 2
  • 10. How to detect all collisions ? • All nodes must always transmit during at least the two way delay (2∗τ) • If bandwidth is fixed => minimum frame size
  • 11. How to react after collision ? • Exponential backoff • Wait random time after collision • Divide time in slots Backoff (slot = (2∗τ)) • 1st collision : wait 0 or 1 slot • 2nd collision :wait 0, 1,2 or 3 slots • ith collision : wait 0..2i-1 slots
  • 12. CSMA/CD • Final solution N=1; while ( N<= max) do wait until channel becomes free; send frame and listen; wait until (end of frame) or (collision) if collision detected stop transmitting; /* after a special jam signal */ k = min (10, N); r = random(0, 2k – 1); wait for r time slots; else /* no collision detected */ wait for interframe delay; exit while; N=N+1; end do /* too many attempts */
  • 13. CSMA/CA • A MAC for wireless networks • Cannot always detect collisions • Improvements to CSMA • Initial delay to transmit (EIFS) • Min. delay between frames (DIFS) • Delay between frame and ack (SIFS)
  • 14. CSMA/CA : receiver While (true) { Wait for data frame; if not(duplicate) { deliver (frame) } wait during SIFS; send ack (frame) ; }
  • 15. CSMA/CA : sender N=1; while ( N<= max) do if (previous frame corrupted) { wait until channel free during t>=EIFS; } else { wait until endofframe; wait until channel free during t>=DIFS; } send data frame ; wait for ack or timeout: if ack received exit while; else /* timeout retransmission is needed */ N=N+1; end do /* too many attempts */
  • 16. Example A B C DIFS Data frame Busy SIFS ACK frame DIFS Data frame
  • 17. Collisions A B C DIFS DIFS Data frame Busy Busy Data frame Timeout Timeout Data frame Busy Data frame
  • 18. CSMA/CA : sender N=1; while ( N<= max) do if (previous frame corruped) { wait until channel free during t>=EIFS; } else { wait until endofframe; wait until channel free during t>=DIFS; } backoff_time = int(random[0,min(255,7*2N-1)])*T wait(channel free during backoff_time) send data frame ; wait for ack or timeout: if ack received exit while; else /* timeout retransmission is needed */ N=N+1; } end do
  • 19. Backoff A B C DIFS DIFS Backoff[0,7] Backoff[0,7] Channel busy! Busy Data frame Data frame SIFS Ack frame Remaining backoff
  • 20. HIdden station problem A B Hears A and C C Only hears B, not C Hears B, but not A
  • 21. Hidden station • How to solve it ? • Sender reserves time slot • Receiver confirms the time reservation
  • 22. RTS/CTS A B C DIFS+Backoff Busy[ 100microsec+ SIFS+ CTS+ SIFS+ ACK ] RTS [100 microsec] SIFS CTS[100microsec] Data [100 microsec] SIFS ACK frame SIFS
  • 23. Agenda • Sharing resources • Medium Access Control • Congestion Control • Internet applications
  • 24. Max-min fairness • Fairness definition for networks • a max-min allocation of bandwidth is an allocation of bandwidth which maximises the allocation of bandwidth to the sources receiving the smallest allocation • Property • a max-min fair allocation is such that in order to increase the bandwidth allocated to one source, it is necessary to decrease the bandwidth allocated to another source which already receives a lower allocation
  • 25. Max-min fairness • a max-min allocation maximises the allocation of bandwidth to the sources receiving the smallest allocation • Property • to increase the bandwidth allocated to one source, it is necessary to decrease the bandwidth allocated to another source which already receives a lower allocation
  • 26. Example R R D1 D3 D5 R R R 1000 Mbps 100 Mbps S1 S2 S3 S4 S5 S6 S7 S8 • Max-min fair bandwidth allocation D2 D4 D6 D7 D8 Link1 Link2 Link3 Link4
  • 27. Router output port Q[1] Q[2] Q[3] Q[N] Flow identification Input links Output link Flow identification Identifies the TCP/UDP flow to which the arriving packet belongs Buffer acceptance accepts or rejects incoming packets Queuing strategy Logical organization of the router's buffers Scheduler Chooses the packet to be transmitted first on the output link
  • 28. Round robin Flow 1 Flow 2 Flow 3 Flow 4 Flow 5 Flow 1 Flow 2 Flow 3 Flow N Scheduler : F1 F2 FN F4 F3
  • 29. Example F1 F2 F3 Flow1(L=1) Flow2 (L=2) Flow3 (L=1) F1 F3 F2 Flow1 and Flow3 send packets of size 1 Flow 2 sends packets of size 2
  • 33. How to detect congestion ? • Packet losses • Routers add information to packets • Forward binary feedback • Backward binary feedback • Rate feedback
  • 34. Congestion control • Additive Increase / Multiplicative Decrease # Additive Increase Multiplicative Decrease if congestion : rate=rate*betaC # MD, betaC<1 else rate=rate+alphaN # AI
  • 35. Window-based Congestion control # Initialisation cwin = 1 # congestion window measured in segments # Ack arrival if newack : # new ack, no congestion # increase cwin by one every rtt cwin = cwin+ (1/cwin) else: # no increase Congestion detected: cwnd=cwin/2 # only once per rtt
  • 36. Agenda • Sharing resources • Internet applications • DNS • Email • Web • Remote Procedure Calls
  • 37. Internet Transport services • Service provided by UDP • Connectionless, unreliable • Service provided by TCP • Connection-oriented • reliable bytestream
  • 38. Internet addresses • IPv4 • 32 bits, written as a.b.c.d, e.g. 130.104.1.1 • IPv6 • 128 bits, written in hexadecimal notation, e.g. 2001:6a8:3080:1::3
  • 39. UDP service UDP service Applic. 2 Applic. 1 Identification IP address : 2001:4860:a005::68 Protocol : UDP Port : 53 Identification: IP address : 2001:6a8:3080:2:217:f2ff:fed6:65c0 Protocol : UDP Port : 1234 • Identification of an application • IP address + port number
  • 40. TCP service TCP service • Identification of an application • IP address + TCP + port number Applic. 2 Applic. 1 Identification IP address: 2001:6a8:3080:1::3 Protocol : TCP Port : 80 Identification: IP address : 2a02:2788:2c4:16f:226:bbff:fe09:266e Protocol : TCP Port : 9876
  • 41. Agenda • Sharing resources • Internet applications • DNS • Email • Web • Remote Procedure Calls
  • 42. The Domain Name System • Hierarchy of domain names • Domain Name servers • DNS resolvers
  • 43. DNS messages Each DNS request contains a number that will be returned in the response by the server to allow the client to match the request. 32 bits Identification Flags 12 bytes Number of questions Number of answers Number of authority Number of additional Questions (variable number of resource records) Answers (variable number of resource records) Authority (variable number of resource records) Additional information (variable number of resource records) lQuestion/Response lRecursive question or not lAuthoritative answer or not lPossible error
  • 44. DNS Resource Records • A • IPv4 address • AAAA • IPv6 address • NS • Name server
  • 45. Agenda • Sharing resources • Internet applications • DNS • Email • Web • Remote Procedure Calls
  • 46. Simplified architecture Alice’s email server b.net ‘s email server Alice@a.net Bob@b.net Alice sends her email to local mail forwarder Alice’s server sends email to b.net’s MX Bob retrieves message from his server
  • 47. Message format Exp: ABC S.A. Rue de Fer 10 5000 Namur DEF Corp. Steel street 9 WA78 AX London Grande Bretagne From: president@abc.be To: ceo@def.com Subject: Hello Date : 27 Sept. 1999 0901 Dear Sir, Bla Bla Bla... Header Message body
  • 48. Header format • At least three lines that end with <CRLF> • From: sender@domain • To:recipient@domain • Date: <creation date of message> • Optional fields • Subject: , cc: ,Message-ID:, Received: In- Reply-To: , ... • Header ends with empty line (<CRLF>)
  • 49. Email protocols SMTP SMTP Email a.net’s SMTP server b.net’s SMTP server retrieval Alice@a.net Bob@b.net
  • 50. Agenda • Sharing resources • Internet applications • DNS • Email • Web • Remote Procedure Calls
  • 51. Simplified architecture Client (browser) Server www.machin.be Server www.truc.fr Query Information
  • 52. Key elements of the web • URL : An addressing scheme that allows to identify any document stored on a server • HTML : An hypertext language to easily write documents with hypertext links • HTTP : An efficient and lightweight protocol to exchange documents • Servers • Clients (browsers)
  • 53. URL • syntax : <protocol>://<document> • http is the most common • document indicates the server and the location of the document • <user>:<password>@<server>:<port>/ <path>
  • 54. HTML <HTML> <HEAD> <TITLE>HTML test page</TITLE> </HEAD> <BODY> <IMG SRC="http://www.images.be/logo.gif"> <H1>Web servers from UCL UCL<P></H1> <HR> <UL> <LI><A HREF="http://www.uclouvain.be">UCL</A> <LI><A HREF="http://www.info.ucl.ac.be">CSE Dept.</A> <LI><A HREF="http://www.math.ucl.ac.be">Math</A> </UL> </BODY> </HTML> Header Body Image on remote server First level title External hypertext link
  • 55. HTTP Client Server Request Method Header CRLF MIME Document Method GET lPOST l... Header contains additional information about request sent by client Response Status line Header CRLF MIME Document Header contains information about server and optional parameters specific to response Success or failure HTTP is a stateless protocol, server does not maintain any state from one request to another
  • 56. HTTP : Example Request Client Server GET /index.html HTTP/1.1 www.info.ucl.ac.be Host: www.info.ucl.ac.be CRLF Response HTTP/1.1 200 OK Date: Fri, 10 Sep 1999 14:29:19 GMT Server: Apache/1.3.0 (Unix) ApacheJServ/1.0b5 Last-Modified: Thu, 02 Sep 1999 11:50:50 GMT Content-Length: 1224 Content-Type: text/html CRLF <HTML> . . . </HTML>
  • 57. Agenda • Sharing resources • Internet applications • DNS • Email • Web • Remote Procedure Calls

Editor's Notes

  1. The value T is defined in the standard, but a detailed discussion of this value is outside the scope of this presentation.
  2. How to determine a max-min fair bandwidth allocation for a given network ? Algorithm [Bertsekas &amp; Gallager, Data Networks, 2nd edition, Prentice Hall 1992] First start with an allocation of 0 Mbps for each source Then equally increment the allocation to each source until one link becomes saturated. At this point, each source which uses the saturated link receives an allocation equal to the bandwidth of this saturated link divided by the number of sources using this bottleneck link. Next, the allocation of all the sources which do not use a saturated link is equally incremented until another link becomes saturated. The algorithm continues from step to step, always incrementing the allocation of the sources which do not use a saturated link, until all sources use at least one of the saturated links.
  3. UDP is defined in J. Postel, User Datagram Protocol. RFC768, August 1980 It will be described in more details later
  4. TCP is defined in J. Postel, Transmission Control Protocol, RFC793, September 1981 It will be described in more details later
  5. The RR MX were proposed in C. Partridge. Mail routing and the domain system. Request for Comments 974, Internet Engineering Task Force, January 1986. A complete list of DNS RR may be found at http://www.its.uq.edu.au/tn-0011