2. Overview
• What are we going to see?
• Jargon, Acronyms and Keywords
• Brief history of network models, the Internet
and Al Gore’s involvement
• Networking Models/Frameworks
• The TCP/IP Model - How your data is
packaged and prepared to be sent over a
network
3. So what are we going to
see?
Data Encapsulation Process
How data is prepared to be sent
Layer
“Data”
Encapsulation
“Segment”
aka “TCP Segment” or
“Datagram”
“Packet” * IP Layer
* Network Layer
“Frame” * Network Interface Layer
* Data Link Layer
* Network Link Layer
5. Jargon, Acronyms and
Keywords
• Protocol
• Network Model Architecture (NM/A)
• TCP - Transmission Control Protocol
• IP - Internet Protocol
• TCP/IP Model = Internet Model =
Internet Protocol Suite = the list goes on
• Encapsulation
6. TCP/IP Model
Terminology / Key Concepts
• (Data) Encapsulation
• Process of modifying or
“packaging” data
7. TCP/IP Model
Terminology / Key Concepts
• Same Layer Interaction
• Interaction between 2 computers at
same layer
• Headers at that layer hold the
information that they want to
communicate
8. TCP/IP Model
Terminology / Key Concepts
• Adjacent Layer Interaction
• higher layers request to the next lower-
layer protocol to perform a service, and
the next lower-layer performs the service
for the higher layer
9. TCP & IP two parts of a
whole
• TCP facilitates the exchange of data (the
“message”) directly between two
computers (hosts/clients) on a network
• IP handles the addressing and routing
of the data (“message”) across
network(s)
10. FedEX Analogy
• TCP is the service that boxes up, packs,
ships/receives your message (e.g. UPS/
Fed-EX/Canada Post/USPS)
• IP is the Mailing Addresses (From/To)
and Directions (Send through YYZ to
get to SFO) involved in getting your
message delivered
11. So Where does this all
happen?
(in the context of this class)
14. So Where does this all happen?
• From a birds view: client devices & servers
• Under a microscope:
• it is an interactive process between the
operating system (Windows, OS X, Linux)
and the network card (Wired/Wireless)
• is both a hardware and software
interaction
• Occurs before leaving your computer
(device)
15. Context
• 1970’s each company (IBM, Apple, Bell
etc.) had their own closed standards
• no open standardized model(s)
between companies
• computers/devices from different
vendors were unable to speak to each
other even if physically connected
16. Network Model /
Architecture “NM/A”
• they are a set of functions and protocols for
both Hardware and Software
• each NM/A takes a layered approach
• layered approach makes it:
• efficient
• easier
• granularity for troubleshooting
18. NM/A - Standardization
• There are two well known models:
• 1. OSI Model (Open Standards
Interconnection?) - Created by the ISO
• This is used primarily as a reference
model now for most NM/A
• 2. TCP/IP Model - Created for/by the US-DoD
(ARPANET / DARPA)
• It is the internet
19. Special Note
• “Layer #” device - This most often
refers to a corresponding layer in the
OSI Model not the TCP/IP model
• Layers are not numbered in TCP/IP
model
22. Then came Al Gore
• Al Gore and the Internet http://pro.ps/UMYVk
• As a Senator, Gore began to craft the High
Performance Computing and Communication Act
of 1991 (commonly referred to as "The Gore
Bill")
• Gore continued his involvement with the
computer industry and new technologies after he
left the White House in 2001. He is a member of
the Board of Directors of Apple Inc. and a Senior
Advisor to Google.
26. What’s the big deal
about TCP/IP?
How data is prepared to be sent
Layer
“Data”
Encapsulation
“Segment”
aka “TCP Segment” or
“Datagram”
“Packet” * IP Layer
* Network Layer
“Frame” * Network Interface Layer
* Data Link Layer
* Network Link Layer
27. TCP/IP Model as FedEx
Data Encapsulation is
How data is packaged and sent
Encapsulation
28.
29. TCP/IP Model
• 4 Layers
• Application
• Transport
• Internet
• Link
30. Note
• the naming of these is inconsistent
across literature by different authors/
companies
• see: http://pro.ps/qJ6ET
31. TCP/IP Model
Application Layer
• “Top” / “Upper Most” / “First” Layer
• Provides services to software applications (i.e.
Firefox etc.)
• Actual ‘Software’ “sits on top” of this
layer - Firefox is “above” this layer
• Examples of protocols at this layer - FTP,
HTTP, SMTP
• Each protocol has its own port e.g. http port 80
- FTP port 21
32. TCP/IP Model
Application Layer
• At this layer data comes in coded
according to application layer protocols
(i.e. http, ftp, IMAP etc.)
• Data is sent off to the next lower layer
(Transport Layer) to be encapsulated
with a ‘lower layer’ protocol (e.g. TCP
or UDP) to start actual data transfer
33. TCP/IP Model
Application Layer
• Joe from Accounting has a document to
send (data) -> Joe is the Web Browser
(Application)
• You are the Mailroom Boy (A.K.A. The
Application Layer)
• Joe hands gives you his document to
FedEX
34. Application Layer to
Transport Layer
Application Layer
Joe’s Document “Data”
Encapsulation
(e.g.http) From Accounting
Transport Layer
35. Application Layer to
Transport Layer
Application Layer
Joe’s Document “Data”
(e.g.http) From Accounting
Encapsulation
You arrive at
36. TCP/IP Model
Transport Layer
• Home to “TCP” in TCP/IP
• TCP = Transmission Control Protocol
37. TCP/IP Model
Transport Layer
• “Second” Layer
• Uses two categories of protocols to
“transport” / encapsulate the data(a.k.a.
datagrams, TCP Segments)
• Reliable (i.e. TCP - Transmission
Control Protocol)
• Unreliable (i.e. UDP - User
Datagram Protocol)
38. Reliable Transport (i.e.
TCP)
• Acknowledgement of data received by
the destination device
• Retransmission of data if not received -
no missing data in reliable transport
• Timeout if it takes too long for a
message to arrive
39. Reliable Transport (i.e.
TCP)
• Ordered - puts messages in proper
sequence - buffers out of order
messages and then properly re-orders
before sending to application
• Think valuable info - Financial data!
40. Unreliable Transport
(i.e. UDP)
• No concept of Acknowledgement,
Retransmission or Timeout
• No Re-Ordering of the message sent - if two
messages sent - the order they arrive can’t be
predicted
• Data integrity is checked IF the message arrives
• Meant for speed/burst transmission (i.e. voice)
41. Transport Layer
Responsibilities
• Flow Control - “Windowing”
• Multiplexing - “Sockets” - Example:
Web Browsers and Multiple Tabbed
Pages
• Segmentation - Breaks data into smaller
chunks when sending
• Clump - reassembles data when
receiving (Reverse of Segmentation)
42. TCP/IP Model
Transport Layer
• A Transport Layer HEADER is added to
the Application Layer Data
• This Transport Layer (“Protocol”)
Header *plus* Application Layer Data
is referred to as a SEGMENT (aka TCP
Segment or Datagram)
43. Reliable transport -
Analogy
• Using the mail analogy: Reliable
transport is like sending registered/
courier mail
• you get confirmation of when the
package arrives at its destination
• you also are told if it’s lost and can
track where it gets lost (in theory...)
44. Unreliable transport -
Analogy
• Unreliable is like sending a postcard
• no return address - only who you’re
sending to
• you don’t care if it gets there you
just send it and wish it luck
45. Transport Layer = Weighing,
Packaging and Getting a Shipping#
1) Weigh your message Fed-Ex
Layer
46. Transport Layer = Weighing,
Packaging and Getting a Shipping#
1) Weigh your message Fed-Ex
Layer
2) Message almost
always too big
47. Transport Layer = Weighing,
Packaging and Getting a Shipping#
1) Weigh your message Fed-Ex
Layer
2) Message almost
always too big
3) Split into
smaller
messages
“Segmentation”
48. Transport Layer = Weighing,
Packaging and Getting a Shipping#
1) Weigh your message Fed-Ex
Layer
2) Message almost Packing Slip for
always too big Content Info Only
3) Split into
smaller
messages
“Segmentation”
50. Transport Layer = Weighing,
Packaging and Getting a Shipping#
3) Split into
smaller
messages
Segmentation
51. Transport Layer = Weighing,
Packaging and Getting a Shipping#
3) Split into
4*) Shipping #s
smaller #1 #2 #3
(*optional)
messages
Segmentation
52. Transport Layer = Weighing,
Packaging and Getting a Shipping#
3) Split into
4*) Shipping #s
smaller #1 #2 #3
(*optional)
messages
Segmentation Packing slip with:
Content Info &
Shipping#
#1 #2 #3
53. With or Without Shipping #
What’s the Diff?
#1, 2, 3 vs. No #’s
54. With or Without Shipping #
What’s the Diff?
#1, 2, 3 vs. No #’s
Reliable Unreliable
Transport Transport
Registered Unregistered
Mail Mail
Fed-EX Post Card
TCP UDP
55. With or Without Shipping #
What’s the Diff?
#1, 2, 3 vs. No #’s
Reliable Unreliable
Transport Transport
TCP UDP
56. Did you notice anything?
• No sender address info
• No recipient address info
• This is handled and passed down to
Internet Layer
58. Application Layer to
Transport Layer
“Data”
Layer
Encapsulation
(e.g.http)
“Segment”
aka
“TCP Segment”
or
“datagram”
Layer
Transport Layer Header added to
Application Layer Data
59. Application Layer to
Transport Layer
Joe’s
“Data” Document
Layer
Encapsulation
(e.g.http)
“Segment”
aka
Arrive at local
“TCP Segment”
or FedEX
“datagram”
Layer
Transport Layer Header added to
Application Layer Data
60. Transport Layer to
Internet Layer
“Segment”
aka
“TCP Segment”
or
“datagram”
Layer
Encapsulation
“Packet”
Layer
Internet Layer Header added to Transport
Layer Segment
61. Transport Layer to
Internet Layer
“Segment”
aka
“TCP Segment”
or
“datagram”
Layer
Encapsulation
“Packet”
Layer
Internet Layer Header added to Transport
Layer Segment
62. TCP/IP Model
Internet Layer
• Home the “IP” of TCP/IP
• IP = Internet Protocol
• Provides addresses -> e.g. 192.168.1.1 or
46 Hayden Street M4Y 1V8
63. TCP/IP Model
Internet Layer
• “Third” Layer
• Also known as the “NETWORK (IP)
LAYER” - and a whole bunch of names...
• Responsible for:
• Routing - (Big Topic)
• Addressing / Subnetting
• Routers operate at this Layer
64. TCP/IP Model
Internet Layer
• An Internet Layer HEADER is added to
the Transport Layer Segment
• This Internet (“IP”) Header *plus*
Transport Layer Segment is referred to
as a PACKET
65. Internet Layer - Time to
give it a Shipping Label
From: To:
123 ABC Street 321 BCA Ave
M2N 4E6 L4R 6Y2
192.168.1.1 10.1.1.1
255.255.255.0 255.255.255.0
66. Transport Layer to
Internet Layer
“Segment”
aka
“TCP Segment”
or
“datagram”
Layer
Encapsulation
“Packet”
Layer
Internet Layer Header added to Transport
Layer Segment
67. Internet Layer to Link
Layer
“Packet”
Layer
Encapsulation
“Frame”
Link Layer
Link Layer Header added to Internet Link Layer Footer added to Internet Layer
Layer Packet Packet
68. TCP/IP Model
Link Layer
• “Last” / “Bottom” / “Fourth” Layer
• Also known as the “DATA LINK, NETWORK
LINK LAYER”
• Has 2 Components
• Software - “Data Link”
• LAN (Ethernet)
• Hardware - “Physical Link”
• Voltages
• Pins on a connector (8 for RJ-45)
69. TCP/IP Model
Link Layer
• MTU (Maximum Transmission Unit) is
controlled by this layer
• Max MTU over Ethernet is 1500-bytes
• HUB & Switch operate at this layer
• We use MAC addresses (Media Access
Control) here NOT IP addresses
70. TCP/IP Model
Link Layer
• A Link Layer HEADER *and* FOOTER
is added to the Internet Layer Packet
• This Link Layer Header & Footer
*plus* Internet Layer Packet is referred
to as a FRAME
71. TCP/IP Model
Link Layer
• This is where the package makes it to
the back of the warehouse
• It is then ready to be put on to a
shipping truck, van etc.
72. TCP/IP Model
Link Layer
• This layer specifies how the data is to
leave FedEX store -> Cube Van only? 16
Wheeler?
73. Transport Layer to
Network (IP) Layer
“Packet”
Layer
Encapsulation
“Frame”
Link Layer
Link Layer Header added to Internet Link Layer Footer added to Internet Layer
Layer Packet Packet
74. TCP/IP Model
Data Encapsulation Process
Layer
“Data”
Encapsulation
“Segment”
aka “TCP Segment” or
“Datagram”
“Packet”
“Frame”
75. TCP/IP:
How data is packaged
Thanks!
Email: Ray@RaymondKao.com
Twitter: @RayKao