SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
Andriy Berestovskyy
2017
Networking Fundamentals
Transport Protocols
( ц ) А н д р
і й Б е р е с
т о в с ь к и
й
networking hour
TCP
UDP
NAT
IPsec
IPv4
IPv6
internet
protocolsAH
ESP
authentication
authorization
accounting
encapsulation
security
BGP
OSPF
ICMP
ACLSNAT
tunnel
PPPoE
GRE
ARP
discovery
NDP
OSI
broadcast
multicast
IGMP
PIM
MAC
DHCP
DNS
fragmentation
semihalf
berestovskyy
Networking Fundamentals
● Computer Networks
● Networking Models
● Local Networks
● Internet
● IPv4 Routing
● > Transport Protocols
2
IPv4 Transport Layer
3
Application
Presentation
Session
Transport
Network
Data Link
Physical
Frame
Bits
MAC Data FCS
IP Data
TCP Data
Packet
Segment
Data
7
6
5
4
3
2
1
Hi!
Salut!
Transmission Control Protocol
● Connection Oriented
● Ordered Delivery
● Error Recovery
● Flow Control
● Multiplexing
4
How?
Other L4
protocols?
Source/Destination Port — for multiplexing
Seq — seq number of the first data byte
Ack — next seq number sender is expecting
Data offset — size of header in 32-bit words, usually 5
Flags — Flags (ACK, PSH, RST, SYN, FIN, etc…)
Window Size —size of the receive window
Checksum — TCP header, data and pseudo-header
Urgent Pointer — offset to last urgent byte
Options — usually empty
TCP Header
5
Source Port Destination Port
Sequence Number
Acknowledgement Number
Off
TCP Checksum
Data
...
[Options …]
0 32
Protected by
TCP Checksum
DataOffset
Flags Window Size
Urgent Pointer
Pseudo
header?
Examples?
Ver IHL DSCP Total LengthE
ID Fl Fragment Offset
TTL Proto = TCP IP Header Checksum
Source Address
Destination Address
[Options …]
0 32
IHL
Protected by IP
Header Checksum
Transport Layer Multiplexing
google.com
Client
100.3.2.5
Server
1.1.1.1
DNS QUERYTo: 1.1.1.11
Src/dst IPs are
the same
How to
distinct?
HTTP GET /To: 1.1.1.12
HTTP GET logo.jpgTo: 1.1.1.13
Multiplexing using Sockets
google.com
Client
100.3.2.5
DNS QUERYTo: 1.1.1.1
Src: 1025
Dst: 53
1
HTTP GET /To: 1.1.1.1
Src: 1026
Dst: 80
2
HTTP GET logo.jpgTo: 1.1.1.1
Src: 1027
Dst: 8080
3
SOCKET 1:
IP: 1.1.1.1
Protocol: UDP
Port: 53
Why 1025?
SOCKET 2:
IP: 1.1.1.1
Protocol: TCP
Port: 80
SOCKET 3:
IP: 1.1.1.1
Protocol: TCP
Port: 8080
Socket?
Why 53?
Network socket — internal endpoint for sending or receiving data
at a single node in a computer network
— Wikipedia
8
Well-Known* Port Numbers
9
20
Port Proto Service
* See /etc/services for more
TCP File Transfer Protocol data connectionftp-data
Unix Name
21 TCP File Transfer protocol control connectionftp
22 TCP Secure shellssh
25 TCP Simple Mail Transfer Protocolsmtp
53 UDP Domain Name System requestdomain
69 UDP Dynamic Host Configuration Protocolbootps
69 UDP Trivial File Transfer Protocoltftp
80 TCP World Wide Webhttp
Socket Connections
10
Client
DNS
Resolver
1025
Web
Browser
Web
Browser
1026 1027
TCP
(100.3.2.5, TCP, 1027)
(100.3.2.5, TCP, 1026)
(100.3.2.5, UDP, 1025)
IP 100.3.2.5
UDP
Server
DNS
Server
53
Web
Server
Web
Server
80 8080
TCP
IP 100.3.2.5
UDP
(1.1.1.1, TCP, 8080)
(1.1.1.1, TCP, 80)
(1.1.1.1, UDP, 53)
TCP Connection Establishment
Server
Port: 80
Src: 1026, Dst: 80
SYN 132
1
Client
Port: 1026
Source Port Destination Port
Sequence Number
Acknowledgement Number
Off
TCP Checksum
Data
...
[Options …]
0 32
Flags: SYN ACK Window Size
Urgent Pointer
Src: 80, Dst: 1026
SYN 69, ACK 132+1
2
Src: 1026, Dst: 80
ACK 69+1
3
11
TCP Error Recovery
12
TCP Client TCP
ACK 701
Data
[ ...
HTTP
GET /
HTTP
OK
TCP
SEQ 70
...SEQ 80
… ]SEQ 90
ACK 80
...SEQ 80
2
3
4
6
TCP Server
5
TCP Connection Termination
Server
Port: 80
Src: 1026, Dst: 80
FIN 99
1
Client
Port: 1026
Source Port Destination Port
Sequence Number
Acknowledgement Number
Off
TCP Checksum
Data
...
[Options …]
0 32
Flags: FIN ACK Window Size
Urgent Pointer
Src: 1026, Dst: 80
ACK 142+1
4
Src: 80, Dst: 1026
ACK 99+1
2
Src: 80, Dst: 1026
ACK 99+1, FIN 142
3
13
User Datagram Protocol
● Connection Oriented
● Connectionless
● Ordered Delivery
● Error Recovery
● Flow Control
● Multiplexing
14
Usage?
Source/Destination Port — for multiplexing
Length —length of UDP header and data
Checksum — header, data and pseudo-header
UDP Header
15
Source Port Destination Port
Length
Data
...
0 32
Protected by
UDP Checksum
8B
UDP Checksum
Pseudo
header?
Ver IHL DSCP Total LengthE
ID Fl Fragment Offset
TTL Proto = UDP IP Header Checksum
Source Address
Destination Address
[Options …]
0 32
IHL
Protected by IP
Header Checksum
TCP vs UDP
16
UDP TCP
Header size
Feature
Data unit
Connection oriented
Reliable transport
Preserve message boundary
Ordered delivery
Data checksum
Flow control
TCP vs UDP
17
8
UDP TCP
20-60Header size
Feature
Datagram SegmentData unit
No YesConnection oriented
No YesReliable transport
Yes NoPreserve message boundary
No YesOrdered delivery
Optional YesData checksum
No YesFlow control Flow
control?
Quality of Service (QoS) — measurement of the overall
performance of a service seen by the users of the network
— Wikipedia
18
Bandwidth
— number of bits available per time in a communication channel
End-to-end delay
— time for a packet to be transmitted across a network
Jitter
— deviation in end-to-end delays
Packet loss
— rate of packets lost / packets sent
Quality of Service Characteristics
19
End-to-end?
End-to-End QoS
LAN
End-to-End QoS
Example Services Requirements
21
Bandwidth Delay
Web browsing
Service
Voice calling
Videoconference
Gaming
Jitter Loss
Peer-to-peer downloading
Example Services Requirements
22
Medium
Bandwidth Delay
MediumWeb browsing
Service
Low LowVoice calling
Medium LowVideoconference
Low LowGaming
Jitter Loss
Medium
Low
Low
Low
Medium
Low
Low
Low
High HighPeer-to-peer downloading High High
How?
23
QoS Overview
Classification Policer
Drop
Scheduler
How?
24
QoS Classification
Payload
...
MAC Destination
MAC Destination MAC Source
MAC Source
Ethertype
0 32
Frame Check Sequence
0x8100 VIDPCP D
Ver IHL DSCP Total LengthE
ID Fl Fragment Offset
TTL Protocol Header Checksum
Source Address
Destination Address
Payload
...
[Options …]
0 32
Ethernet Header IPv4 Header
DSCP — Differentiated Services Code Point (6 bits)
ECN — Explicit Congestion Notification (2 bits)
PCP — Priority Code Point (Class of service) (3 bits)
DEI — Drop Eligible Indicator (1 bit)
Transport Protocols Checklist
1. TCP services?
2. Socket?
3. TCP connection establishment?
4. UDP services?
5. TCP vs UDP?
6. QoS?
25
References
1. Kevin Wallace. CCNP Routing and Switching ROUTE 300-101 Official Cert Guide. Cisco Press, 2014
2. David Hucaby. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014
3. RFC 1122. Requirements for Internet Hosts — Communication Layers.
4. IANA Protocol Numbers: http://www.iana.org/assignments/protocol-numbers
26

Mais conteúdo relacionado

Mais procurados

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 QuestionsDuane Bodle
 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Olivier Bonaventure
 
Technical Overview of QUIC
Technical  Overview of QUICTechnical  Overview of QUIC
Technical Overview of QUICshigeki_ohtsu
 
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
 
Ch 03 --- the OpenFlow protocols
Ch 03 --- the OpenFlow protocolsCh 03 --- the OpenFlow protocols
Ch 03 --- the OpenFlow protocolsYoram Orzach
 
Network interview questions
Network interview questionsNetwork interview questions
Network interview questionsrajasekar1712
 
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 protocolsOlivier Bonaventure
 
Wireshark, Tcpdump and Network Performance tools
Wireshark, Tcpdump and Network Performance toolsWireshark, Tcpdump and Network Performance tools
Wireshark, Tcpdump and Network Performance toolsSachidananda Sahu
 
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 resourcesOlivier 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 BGPOlivier Bonaventure
 
Wireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filtersWireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filtersYoram Orzach
 
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-NetzwerkstackL2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-NetzwerkstackMaximilan Wilhelm
 

Mais procurados (20)

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 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6
 
Technical Overview of QUIC
Technical  Overview of QUICTechnical  Overview of QUIC
Technical Overview of QUIC
 
Well known protocols port numbers
Well known  protocols port numbersWell known  protocols port numbers
Well known protocols port numbers
 
Making our networking stack truly extensible
Making our networking stack truly extensible Making our networking stack truly extensible
Making our networking stack truly extensible
 
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
 
9 ipv6-routing
9 ipv6-routing9 ipv6-routing
9 ipv6-routing
 
Port numbers
Port numbersPort numbers
Port numbers
 
6.Routing
6.Routing6.Routing
6.Routing
 
Ch 03 --- the OpenFlow protocols
Ch 03 --- the OpenFlow protocolsCh 03 --- the OpenFlow protocols
Ch 03 --- the OpenFlow protocols
 
Network interview questions
Network interview questionsNetwork interview questions
Network interview questions
 
6 app-tcp
6 app-tcp6 app-tcp
6 app-tcp
 
10 routing-bgp
10 routing-bgp10 routing-bgp
10 routing-bgp
 
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
 
Wireshark, Tcpdump and Network Performance tools
Wireshark, Tcpdump and Network Performance toolsWireshark, Tcpdump and Network Performance tools
Wireshark, Tcpdump and Network Performance tools
 
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
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
 
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
 
Wireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filtersWireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filters
 
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-NetzwerkstackL2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
 

Semelhante a Networking Fundamentals: Transport Protocols (TCP and UDP)

Jaimin chp-6 - transport layer- 2011 batch
Jaimin   chp-6 - transport layer- 2011 batchJaimin   chp-6 - transport layer- 2011 batch
Jaimin chp-6 - transport layer- 2011 batchJaimin Jani
 
Primer to Browser Netwroking
Primer to Browser NetwrokingPrimer to Browser Netwroking
Primer to Browser NetwrokingShuya Osaki
 
Chapter 01 - Overview
Chapter 01 - OverviewChapter 01 - Overview
Chapter 01 - Overviewphanleson
 
Your app lives on the network - networking for web developers
Your app lives on the network - networking for web developersYour app lives on the network - networking for web developers
Your app lives on the network - networking for web developersWim Godden
 
Transport Layer Port or TCP/IP & UDP Port
Transport Layer Port or TCP/IP & UDP PortTransport Layer Port or TCP/IP & UDP Port
Transport Layer Port or TCP/IP & UDP PortNetwax Lab
 
Normas y Estándares
Normas y EstándaresNormas y Estándares
Normas y Estándaresguestc07d512a
 
Solarwinds port requirement
Solarwinds port requirementSolarwinds port requirement
Solarwinds port requirementEzahir Amer
 
บทที่ 2 โพรโตคอล (protocol)
บทที่  2 โพรโตคอล (protocol)บทที่  2 โพรโตคอล (protocol)
บทที่ 2 โพรโตคอล (protocol)chrisman77
 
CCNA Interview.pdf
CCNA Interview.pdfCCNA Interview.pdf
CCNA Interview.pdfhoang971
 
Internet Overview
Internet OverviewInternet Overview
Internet OverviewCTIN
 
16.) layer 3 (basic tcp ip routing)
16.) layer 3 (basic tcp ip routing)16.) layer 3 (basic tcp ip routing)
16.) layer 3 (basic tcp ip routing)Jeff Green
 
Agilent_Netzwerk.pdf
Agilent_Netzwerk.pdfAgilent_Netzwerk.pdf
Agilent_Netzwerk.pdfKhodorAkoum1
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overviewRouyun Pan
 

Semelhante a Networking Fundamentals: Transport Protocols (TCP and UDP) (20)

Lec 2.pptx
Lec 2.pptxLec 2.pptx
Lec 2.pptx
 
TCP/IP Basics
TCP/IP BasicsTCP/IP Basics
TCP/IP Basics
 
Jaimin chp-6 - transport layer- 2011 batch
Jaimin   chp-6 - transport layer- 2011 batchJaimin   chp-6 - transport layer- 2011 batch
Jaimin chp-6 - transport layer- 2011 batch
 
Primer to Browser Netwroking
Primer to Browser NetwrokingPrimer to Browser Netwroking
Primer to Browser Netwroking
 
Chapter 01 - Overview
Chapter 01 - OverviewChapter 01 - Overview
Chapter 01 - Overview
 
Wireshark Basics
Wireshark BasicsWireshark Basics
Wireshark Basics
 
Your app lives on the network - networking for web developers
Your app lives on the network - networking for web developersYour app lives on the network - networking for web developers
Your app lives on the network - networking for web developers
 
TCP IP
TCP IP TCP IP
TCP IP
 
OSI layer by cisco
OSI layer by ciscoOSI layer by cisco
OSI layer by cisco
 
Transport Layer Port or TCP/IP & UDP Port
Transport Layer Port or TCP/IP & UDP PortTransport Layer Port or TCP/IP & UDP Port
Transport Layer Port or TCP/IP & UDP Port
 
Normas y Estándares
Normas y EstándaresNormas y Estándares
Normas y Estándares
 
Solarwinds port requirement
Solarwinds port requirementSolarwinds port requirement
Solarwinds port requirement
 
บทที่ 2 โพรโตคอล (protocol)
บทที่  2 โพรโตคอล (protocol)บทที่  2 โพรโตคอล (protocol)
บทที่ 2 โพรโตคอล (protocol)
 
CCNA Interview.pdf
CCNA Interview.pdfCCNA Interview.pdf
CCNA Interview.pdf
 
Internet Overview
Internet OverviewInternet Overview
Internet Overview
 
RAZORPOINT TCP/UDP PORTS LIST
RAZORPOINT TCP/UDP PORTS LISTRAZORPOINT TCP/UDP PORTS LIST
RAZORPOINT TCP/UDP PORTS LIST
 
16.) layer 3 (basic tcp ip routing)
16.) layer 3 (basic tcp ip routing)16.) layer 3 (basic tcp ip routing)
16.) layer 3 (basic tcp ip routing)
 
Firewall
FirewallFirewall
Firewall
 
Agilent_Netzwerk.pdf
Agilent_Netzwerk.pdfAgilent_Netzwerk.pdf
Agilent_Netzwerk.pdf
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overview
 

Mais de Andriy Berestovskyy

Networking Fundamentals: IPv4 Routing and Support Protocols
Networking Fundamentals: IPv4 Routing and Support ProtocolsNetworking Fundamentals: IPv4 Routing and Support Protocols
Networking Fundamentals: IPv4 Routing and Support ProtocolsAndriy Berestovskyy
 
Networking Fundamentals: Computer Network Basics
Networking Fundamentals: Computer Network BasicsNetworking Fundamentals: Computer Network Basics
Networking Fundamentals: Computer Network BasicsAndriy Berestovskyy
 
Why my network does not work? Networking Quiz 2017
Why my network does not work? Networking Quiz 2017Why my network does not work? Networking Quiz 2017
Why my network does not work? Networking Quiz 2017Andriy Berestovskyy
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Andriy Berestovskyy
 
IPsec Basics: AH and ESP Explained
IPsec Basics: AH and ESP ExplainedIPsec Basics: AH and ESP Explained
IPsec Basics: AH and ESP ExplainedAndriy Berestovskyy
 

Mais de Andriy Berestovskyy (6)

Networking Fundamentals: IPv4 Routing and Support Protocols
Networking Fundamentals: IPv4 Routing and Support ProtocolsNetworking Fundamentals: IPv4 Routing and Support Protocols
Networking Fundamentals: IPv4 Routing and Support Protocols
 
Networking Fundamentals: Computer Network Basics
Networking Fundamentals: Computer Network BasicsNetworking Fundamentals: Computer Network Basics
Networking Fundamentals: Computer Network Basics
 
Why my network does not work? Networking Quiz 2017
Why my network does not work? Networking Quiz 2017Why my network does not work? Networking Quiz 2017
Why my network does not work? Networking Quiz 2017
 
The Spectre of Meltdowns
The Spectre of MeltdownsThe Spectre of Meltdowns
The Spectre of Meltdowns
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)
 
IPsec Basics: AH and ESP Explained
IPsec Basics: AH and ESP ExplainedIPsec Basics: AH and ESP Explained
IPsec Basics: AH and ESP Explained
 

Último

Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书rnrncn29
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Sonam Pathan
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书rnrncn29
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Excelmac1
 
Elevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New OrleansElevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New Orleanscorenetworkseo
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 

Último (20)

Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...
 
Elevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New OrleansElevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New Orleans
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 

Networking Fundamentals: Transport Protocols (TCP and UDP)

  • 1. Andriy Berestovskyy 2017 Networking Fundamentals Transport Protocols ( ц ) А н д р і й Б е р е с т о в с ь к и й networking hour TCP UDP NAT IPsec IPv4 IPv6 internet protocolsAH ESP authentication authorization accounting encapsulation security BGP OSPF ICMP ACLSNAT tunnel PPPoE GRE ARP discovery NDP OSI broadcast multicast IGMP PIM MAC DHCP DNS fragmentation semihalf berestovskyy
  • 2. Networking Fundamentals ● Computer Networks ● Networking Models ● Local Networks ● Internet ● IPv4 Routing ● > Transport Protocols 2
  • 3. IPv4 Transport Layer 3 Application Presentation Session Transport Network Data Link Physical Frame Bits MAC Data FCS IP Data TCP Data Packet Segment Data 7 6 5 4 3 2 1 Hi! Salut!
  • 4. Transmission Control Protocol ● Connection Oriented ● Ordered Delivery ● Error Recovery ● Flow Control ● Multiplexing 4 How? Other L4 protocols?
  • 5. Source/Destination Port — for multiplexing Seq — seq number of the first data byte Ack — next seq number sender is expecting Data offset — size of header in 32-bit words, usually 5 Flags — Flags (ACK, PSH, RST, SYN, FIN, etc…) Window Size —size of the receive window Checksum — TCP header, data and pseudo-header Urgent Pointer — offset to last urgent byte Options — usually empty TCP Header 5 Source Port Destination Port Sequence Number Acknowledgement Number Off TCP Checksum Data ... [Options …] 0 32 Protected by TCP Checksum DataOffset Flags Window Size Urgent Pointer Pseudo header? Examples? Ver IHL DSCP Total LengthE ID Fl Fragment Offset TTL Proto = TCP IP Header Checksum Source Address Destination Address [Options …] 0 32 IHL Protected by IP Header Checksum
  • 6. Transport Layer Multiplexing google.com Client 100.3.2.5 Server 1.1.1.1 DNS QUERYTo: 1.1.1.11 Src/dst IPs are the same How to distinct? HTTP GET /To: 1.1.1.12 HTTP GET logo.jpgTo: 1.1.1.13
  • 7. Multiplexing using Sockets google.com Client 100.3.2.5 DNS QUERYTo: 1.1.1.1 Src: 1025 Dst: 53 1 HTTP GET /To: 1.1.1.1 Src: 1026 Dst: 80 2 HTTP GET logo.jpgTo: 1.1.1.1 Src: 1027 Dst: 8080 3 SOCKET 1: IP: 1.1.1.1 Protocol: UDP Port: 53 Why 1025? SOCKET 2: IP: 1.1.1.1 Protocol: TCP Port: 80 SOCKET 3: IP: 1.1.1.1 Protocol: TCP Port: 8080 Socket? Why 53?
  • 8. Network socket — internal endpoint for sending or receiving data at a single node in a computer network — Wikipedia 8
  • 9. Well-Known* Port Numbers 9 20 Port Proto Service * See /etc/services for more TCP File Transfer Protocol data connectionftp-data Unix Name 21 TCP File Transfer protocol control connectionftp 22 TCP Secure shellssh 25 TCP Simple Mail Transfer Protocolsmtp 53 UDP Domain Name System requestdomain 69 UDP Dynamic Host Configuration Protocolbootps 69 UDP Trivial File Transfer Protocoltftp 80 TCP World Wide Webhttp
  • 10. Socket Connections 10 Client DNS Resolver 1025 Web Browser Web Browser 1026 1027 TCP (100.3.2.5, TCP, 1027) (100.3.2.5, TCP, 1026) (100.3.2.5, UDP, 1025) IP 100.3.2.5 UDP Server DNS Server 53 Web Server Web Server 80 8080 TCP IP 100.3.2.5 UDP (1.1.1.1, TCP, 8080) (1.1.1.1, TCP, 80) (1.1.1.1, UDP, 53)
  • 11. TCP Connection Establishment Server Port: 80 Src: 1026, Dst: 80 SYN 132 1 Client Port: 1026 Source Port Destination Port Sequence Number Acknowledgement Number Off TCP Checksum Data ... [Options …] 0 32 Flags: SYN ACK Window Size Urgent Pointer Src: 80, Dst: 1026 SYN 69, ACK 132+1 2 Src: 1026, Dst: 80 ACK 69+1 3 11
  • 12. TCP Error Recovery 12 TCP Client TCP ACK 701 Data [ ... HTTP GET / HTTP OK TCP SEQ 70 ...SEQ 80 … ]SEQ 90 ACK 80 ...SEQ 80 2 3 4 6 TCP Server 5
  • 13. TCP Connection Termination Server Port: 80 Src: 1026, Dst: 80 FIN 99 1 Client Port: 1026 Source Port Destination Port Sequence Number Acknowledgement Number Off TCP Checksum Data ... [Options …] 0 32 Flags: FIN ACK Window Size Urgent Pointer Src: 1026, Dst: 80 ACK 142+1 4 Src: 80, Dst: 1026 ACK 99+1 2 Src: 80, Dst: 1026 ACK 99+1, FIN 142 3 13
  • 14. User Datagram Protocol ● Connection Oriented ● Connectionless ● Ordered Delivery ● Error Recovery ● Flow Control ● Multiplexing 14 Usage?
  • 15. Source/Destination Port — for multiplexing Length —length of UDP header and data Checksum — header, data and pseudo-header UDP Header 15 Source Port Destination Port Length Data ... 0 32 Protected by UDP Checksum 8B UDP Checksum Pseudo header? Ver IHL DSCP Total LengthE ID Fl Fragment Offset TTL Proto = UDP IP Header Checksum Source Address Destination Address [Options …] 0 32 IHL Protected by IP Header Checksum
  • 16. TCP vs UDP 16 UDP TCP Header size Feature Data unit Connection oriented Reliable transport Preserve message boundary Ordered delivery Data checksum Flow control
  • 17. TCP vs UDP 17 8 UDP TCP 20-60Header size Feature Datagram SegmentData unit No YesConnection oriented No YesReliable transport Yes NoPreserve message boundary No YesOrdered delivery Optional YesData checksum No YesFlow control Flow control?
  • 18. Quality of Service (QoS) — measurement of the overall performance of a service seen by the users of the network — Wikipedia 18
  • 19. Bandwidth — number of bits available per time in a communication channel End-to-end delay — time for a packet to be transmitted across a network Jitter — deviation in end-to-end delays Packet loss — rate of packets lost / packets sent Quality of Service Characteristics 19 End-to-end?
  • 21. Example Services Requirements 21 Bandwidth Delay Web browsing Service Voice calling Videoconference Gaming Jitter Loss Peer-to-peer downloading
  • 22. Example Services Requirements 22 Medium Bandwidth Delay MediumWeb browsing Service Low LowVoice calling Medium LowVideoconference Low LowGaming Jitter Loss Medium Low Low Low Medium Low Low Low High HighPeer-to-peer downloading High High How?
  • 24. 24 QoS Classification Payload ... MAC Destination MAC Destination MAC Source MAC Source Ethertype 0 32 Frame Check Sequence 0x8100 VIDPCP D Ver IHL DSCP Total LengthE ID Fl Fragment Offset TTL Protocol Header Checksum Source Address Destination Address Payload ... [Options …] 0 32 Ethernet Header IPv4 Header DSCP — Differentiated Services Code Point (6 bits) ECN — Explicit Congestion Notification (2 bits) PCP — Priority Code Point (Class of service) (3 bits) DEI — Drop Eligible Indicator (1 bit)
  • 25. Transport Protocols Checklist 1. TCP services? 2. Socket? 3. TCP connection establishment? 4. UDP services? 5. TCP vs UDP? 6. QoS? 25
  • 26. References 1. Kevin Wallace. CCNP Routing and Switching ROUTE 300-101 Official Cert Guide. Cisco Press, 2014 2. David Hucaby. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014 3. RFC 1122. Requirements for Internet Hosts — Communication Layers. 4. IANA Protocol Numbers: http://www.iana.org/assignments/protocol-numbers 26