(hoctap.suctremmt.com) bản chính Nhập môn mạng

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 144

CHƯƠNG

GIỚI THIỆU
Internet là gì?
Mạng Máy Tính ?
Khi sử dụng mạng máy
tính ta sẽ được các lợi
ích:
A Chia sẻ tài nguyên (ổ cứng, cơ sở dữ liệu, máy in,các phần mềm tiện ích.

B Quản lí tập trung, bảo mật và backup tốt.

C Sử dụng các dịch vụ mạng

D Tất cả đều đúng.


Kỹthuật dùng để nối kết nhiều
máy tính với nhau trong phạm vi
một văn phòng gọi là:

A WAN

B MAN

C LAN

D INTERNET
Cho biết nét đặc trưng để phân biệt LAN, MAN, WAN là gì ?

A Kích Thước vùng địa lí

B Công tác tổ chức quản lí

C Tốc độ truyền dữ liệu

D Tất cả phương án trên đều sai


Đơn vịđo thông lượng là
:

A Bit/phút

B Bit/s

C Byte/s

D Byte/phút
Lệ
nh nà
o cho biế
t đị
a chỉIP củ
a má
y tí
nh:

A FTP

B TCP_IP

C IPCONFIG

D IP
Lệnh Ping dùng để làm gì ?

A Kiểm tra máy tính có đĩa cứng hay không

B Kiểm tra máy tính có hoạt động tốt hay không

C Kiểm tra máy tính có kết nối vào mạng được hay không

D Tất cả phương án đều sai


Trong các mô hình sau, mô hình nào là mô
hình mạng được dùng phổ biến hiện nay:

A Terminal - Mainframe

B Peer-To-Peer

C Remote Access

D Client - Server
Internet là gì?

Internet là một hệ thống thông tin toàn cầu có thể


được truy nhập công cộng gồm các mạng máy tính
được liên kết với nhau. Hệ thống này truyền thông tin
theo kiểu nối chuyển gói dữ liệu (packet switching)
dựa trên một giao thức liên mạng đã được chuẩn hóa
(giao thức IP).

{=>Internet gồm các mạng máy tính được liên kết


với nhau.}
(Mạng của Mạng Máy Tính.)
t
1
h
2

Giao thức là gì?


i

u

Giao thức con người: Giao thức mạng:

“Bây giờ là mấy giờ?” Máy móc chứ không phải là


con người
“Tôi có một câu hỏi”
tất cả các hoạt động truyền
Giới thiệu thông trên Internet bị chi
phối bởi các giao thức.
… thông điệp cụ thể đã
được gửi Giao thức định nghĩa định
… các hành động cụ thể dạng, thứ tự các thông điệp
được thực hiện khi các được gởi và nhận giữa các
thông điệp được nhận,
thực thể mạng, và các hành
hoặc các sự kiện khác
động được thực hiện trên
việc truyền và nhận thông
điệp
Định nghĩa giao thức (protocol)

Là các tín hiệu nhị phân truyền đi trước khi truyền dữ


A
liệu thật sự.
Là cơ chế “bắt tay ba lần” mà mọi thiết bị mạng đều phải thực
B
hiện khi khởi động.
Là một tập các quy ước, thoả thuận mà các thiết bị trên mạng phải
C tuân theo để có thể liên lạc được với nhau.

Là một tập các đặc tả mà mọi nhà sản xuất sản phẩm mạng phải
D
dựa theo để thiết kế sản phẩm của mình.
t
1
h
4

Giao thức là gì?


i

u

Giao thức con người và giao thức mạng máy tính:

Xin chào Yêu cầu


kết nối TCP
Xin chào
Trả lời
kết nối TCP
Rãnh không?
Get http://www.awl.com/kurose-ross
2:00
<file>
time

Hỏi: các giao thức khác của con người?


t
1
h
5

Chuyển mạch gói: store-and-forward


i

u

L bits
mỗi packet

3 2 1
Nguồn đích
R bps R bps

Mất L/R giây để truyền tải L-


bit packet trong đường link tại Ví dụ số về one-hop :
tốc độ R bps L = 7.5 Mbits
store and forward: toàn bộ R = 1.5 Mbps
packet phải đến bộ định tuyến Độ trễ truyền tải one-hop
trước khi nó có thể được = 5 sec
truyền tải trên đường link tiếp
 end-end delay = 2L/R (giả sử Thêm về độ trễ ngắn …
theo không có độ trễ lan truyền)
t
1
h
6

Chuyển mạch gói: store-and-forward


i

u

L bits
mỗi packet

3 2 1
Nguồn đích
R bps |D1 R bps |D2

end-end delay = 2L/R ,nếu


có độ trễ lan truyền (với
D1,D2 là độ dài đường link 2L/R + D1/c +D2/d

vật lí. c,d làn lượt là tốc độ


lan truyền của D1,D2 .Bỏ qua
thời gian chờ và xử lí gói tin)
t
1
h
7

Alternative core: chuyển mạch kênh


i

u

Tài nguyên giữa 2 điểm cuối được phân bổ,


được dành cho “cuộc gọi” giữa nguồn và
đích:
Trong sơ đồ, mỗi đường link có bốn kênh.
– Cuộc gọi dùng kênh thứ 2nd trong
đường link trên cùng và kênh thứ
trong đường link bên phải.
Tài nguyên được dành riêng : không chia
sẽ
– circuit-like (được đảm bảo)
performance
Mảnh kênh được cấp phát sẽ rãnh rỗi nếu
không được sử dụng bởi cuộc gọi (không
chia sẽ)
Thường được sử dụng trong các mạng điện
thoại truyền thống
t
1
h
8

Chuyển mạch kênh: FDM với TDM


i

u

Ví dụ:
FDM
4 users

frequency

time
TDM

frequency

time
t
1
h
9
i

Bốn nguồn gây ra chậm trễ gói
tin
u

truyền
A lan truyền

B
xử lý
tai nút xếp hàng

dnodal = dproc + dqueue + dtrans + dprop

dproc: xử lý tại nút dqueue: độ trễ xếp hàng


Kiểm tra các bit lỗi  Thời gian đợi tại đường
Xác định đường ra ra cho việc truyền dữ liệu
Thông thường < msec  Phụ thuộc vào mức độ tắt
nghẽn của bộ định tuyến
t

Bốn nguồn gây ra chậm trễ gói


2
h
0
i

u

tin
truyền
A lan truyền

B
xử lý
tại nút xếp hàng

dnodal = dproc + dqueue + dtrans + dprop

dtrans: trễ do truyền: dprop: trễ do lan truyền:


 L: chiều dài gói (bits)  d: độ dài của đường link vật lý
 R: băng thông đường link (bps)  s: tốc độ lan truyền trong môi
 dtrans = L/R trường (thiết bị, dây dẫn)
dtrans and dprop (~2x108 m/sec)
rất khác nhau  dprop = d/s
* Check out the Java applet for an interactive animation on trans vs. prop delay
Giả sử gói tin có kích thước là 1500 bytes và tốc độ truyền là 10Mbps.Tính độ trễ do
truyền:

A 0.15ms

B 1.2ms

C 0.14ms

D Không đáp án nào đúng


Cần truyền gói tin kích thước 1000 bytes từ Host A đến Host B, trên đường truyền dài
2500 km, tốc độ lan truyền là 2.5 x 10^8 m/s, và tốc độ truyền (transmission rate) là 2
Mbps.Giả sử rằng thời gian xử lí(nodal processing) và thời gian chờ tại hàng đợi
(queueing delay) không đáng kể.Thời gian cần để truyền gói tin từ A đến B là:

A 14 msec

B Không đáp án nào đúng

C 10 sec

D 10 msec
Trong bốn nguồn gây ra chậm trễ gói tin trong quá trình truyền dữ
liệu, thì khái niệm “trễ do truyền “ là khái niệm nào sau đây?

A Chậm trễ do xử lí tại nút (Kiểm tra lỗi bít,xác định cổng ra..)

B Chậm trễ trong quá trình Truyền gói tin từ hàng đợi ra đường truyền.

C Chậm trễ do nằm trong hàng đợi tại nút

D Chậm trễ trong quá trình lan truyền


Độ trễ và định tuyến trên Internet “thực
tế”
Độ trễ và sự mất mát trên Internet “thực tế” trông như thế nào
Chương trình traceroute: giúp đo lường độ trễ từ nguồn tới thiết
bị định tuyến cái mà dọc theo con đường Internet từ đầu cuối này
đến đầu cuối kia đến đích. Với tất cả i:
– Gởi 3 gói tin sẽ đến bộ định tuyến I trên đường tới
đích
– Router i sẽ trả về các gói tin cho người gởi
– Khoảng thời gian lần gửi giữa truyền và trả lời

3 probes 3 probes

3 probes
1-24
Giới thiệu
Trên Window, khi không kết nối được đến một hệ thống khác,
người quản trị dùng lệnh gì dò đường để xác định lỗi ?

A Traceroute

B Ip-config

C ping

D route
t

Độ trễ và định tuyến trên


2
h
6
i

Internet “thực tế”


u

traceroute: gaia.cs.umass.edu đến www.eurecom.fr


3 giá trị trễ từ
gaia.cs.umass.edu đến cs-gw.cs.umass.edu
1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms
2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms
3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms
4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms
5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms
6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms
7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms trans-oceanic
8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms
9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms link
10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms
11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms
12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms
13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms
14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms
15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms
16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms
17 * * *
18 * * * * Không có phản hồi (thăm dò bị mất, router không trả lời)
19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms

* Do some traceroutes from exotic countries at www.traceroute.org


Lệnh nào sẽ hiển thị kết quả dưới đây
1 <1 ms <1 ms <1 ms routerA [172.16.9.1]
2 1 ms 1 ms 1 ms routerB [203.162.39.97]
3 30 ms 9 ms 47 ms serverX [203.162.204.21]

A tracert

B nbtstat

C ping –a

D ping
d
2

8

Mô hình tham chiếu ISO/OSI


n
g

presentation: cho phép các ứng dụng giải thích ý nghĩa


của dữ liệu, ví dụ mã hóa, nén, những quy ước chuyên
biệt
application
session: sự đồng bộ hóa, khả năng chịu lỗi, phục hồi sự
trao đổi dữ liệu presentation
g? Chồng giao thức Internet “thiếu” những lớp này!
session
– Những dịch vụ này,
nếu được cần, phải
transport

được thực hiện trong network


tầng ứng dụng link
(application) physical
– Cần hay khôn
Hãy cho biết điểm khác biệt cơ bản giữa Network layer và
Transport layer

Lớp network cung cấp kết nối luận lí giữa các host, lớp
A
transport cung cấp kết nối luận lí giữa các process
Lớp transport cung cấp kết nối luận lí giữa các host, lớp
B
network cung cấp kết nối luận lí giữa các process
Lớp network cung cấp kết nối luận lí giữa các host, lớp
C
transport cung cấp kết nối vật lí giữa các process
Lớp network cung cấp kết nối luận lí giữa các process, lớp
D
transport cung cấp kết nối luận lí giữa các process
PORT MỘT SỐ GIAO THỨC
Trong số các cặp giao thức và cổng dịch vụ sau, cặp nào là
đúng

A SMTP: TCP Port 25

B FTP: TCP Port 22

C Telnet: UDP Port 23

D HTTP: UDP Port 80


t
3
h
3

Đóng góiapplication
i
ệ nguồn
u
message M
segment Ht M transport
datagram Hn Ht M network
frame Hl Hn Ht M link
physical
link
physical

Bộ
Chuyển mạch

đích Hn Ht M network
M application Hl Hn Ht M link Hn Ht M
Ht M transport physical
Hn Ht M network
Hl Hn Ht M link Bộ
physical định tuyến
Cho biết định dạng của thông tin ở tầng network trong mô
hình OSI là gì ?

A Segment

B Frame

C Packet

D Data
TCP và UDP hoạt động ở tầng nào trong mô hình OSI:

A Session

B Transport

C Network

D Data Link
MÔ HÌ
NH OSI CÓBAO NHIÊU LỚP

A 7

B 6

C 5

D 4
Trong mô hình TCP/IP thì giao thức IP nằm ở tầng:

A Network Access

B Internet

C Transport

D Application
Thứ tự các tầng (layer) của mô hình OSI theo thứ tự từ trên
xuống là?

A Application, Presentation, Session, Transport, Data Link, Network, Physical

B Application, Presentation, Session, Transport, Network, Data Link, Physical

C Application, Presentation, Session, Network, Transport, Data Link, Physical

D Application, Presentation, Transport, Session, Data Link, Network, Physical


Thiết bị Router thông thường nằm
ở tầng nào của mô hình OSI?

A Tầng 3

B Tầng 2

C Tầng 1

D Tất cả đều sai


NIC là thiết bị hoạt động ở lớp nào ở mô hình OSI

A Lớp 3

B Lớp 2

C Lớp 1

D Lớp 4
Thứ tự đóng gói dữ liệu thông qua mô hình OSI

A Data,Segment,Packet,Frame,Bit

B Data,Packet,Segment,Bit,Frame.

C Data,Packet,Segment,Frame,Bit

D Data,Segment,Frame,Packet,Bit
Chọn chức năng của tầng
Presentation?
A Mã hoá dữ liệu và nén dữ liệu

B Cung cấp các dịch vụ mạng người dùng

C Đánh địa chỉ

D Tất cả đều sai


Khi gói dữ liệu di chuyển từ lớp cao xuống lớp thấp
hơn thì các phần đầu (header) được:

A Loại bỏ dần

B Thêm vào dần

C Sắp xếp lại

D Thay đổi bị trí


Theo mô hình OSI, định dạng ảnh JPG nằm ở tầng?

A Applications

B Presentation

C Network

D Session
Quá trình dữ liệu di chuyển từ hệ thống máy tính này
sang hệ thống máy tính khác phải trải qua giai đoạn nào?

A Nén dữ liệu và đóng gói

B Lọc dữ liệu

C Kiểm thử dữ liệu

D Phân tích dữ liệu


Khi gói dữ liệu di chuyển từ lớp thấp đến lớp cao hơn thì
các phần đầu (header) được:

A Thêm vào dần

B Loại bỏ dần

C Sắp xếp lại

D Thay đổi bị trí


Tầng nào trong mô hình
OSI làm việc với các tín
hiệu điện:
A Session

B Data LInk

C NetWork

D Physical
CHƯƠNG
TẦNG
APPLICATION
ứng dụng

• Client – Server
• Pear to Pear (P2P)
TCP - UDP
Nét đặc trưng cơ bản
Dịch vụ TCP: Dịch vụ UDP:
Truyền tải có đảm bảo (reliable transport) giữa tiến Truyền dữ liệu không đảm bảo (unreliable data
trình gửi và nhận transfer) iữa tiến trình gửi và nhận
Điều khiển luồng thông tin (flow control): bên gửi sẽ
Không hỗ trợ: độ tin cậy, điều khiển luồng, điều
không gửi vượt khả năng bên nhận
khiển tắc nghẽn, định thì, bảo đảm thông lượng, bảo
Điều khiển tắc nghẽn (congestion control): điều tiết mật, và thiết lập kết nối.
bên gửi khi mạng quá tải
Không hỗ trợ: định thì, bảo đảm thông lượng tối thiểu,
bảo mật
Hướng kết nối (connectionoriented): yêu cầu thiết lập
kết nối giữa tiến trình máy khách và máy chủ trước khi
truyền
SSL
Sự khác nhau TCP- UDP
Giống nhau : đều là các giao thức mạng TCP/IP, đều có chức năng kết nối các máy lại
với nhau, và có thể gửi dữ liệu cho nhau....

Khác nhau (cơ bản):


các header của TCP và UDP khác nhau ở kích thước (20 và 8 byte) nguyên nhân chủ yếu
là do TCP phải hộ trợ nhiều chức năng hữu ích hơn(như khả năng khôi phục lỗi). UDP
dùng ít byte hơn cho phần header và yêu cầu xử lý từ host ít hơn
TCP :
- Thường dùng cho mạng WAN
- Không cho phép mất gói tin
- Đảm bảo việc truyền dữ liệu
- Tốc độ truyền thấp hơn UDP
UDP:
- Thường dùng cho mạng LAN
- Cho phép mất dữ liệu
- Không đảm bảo.
HTTP Connection

HTTP không bền vững HTTP bền vững


Chỉ tối đa một đối tượng được  Nhiều đối tượng có thể được
gởi qua một kết nối TCP giữa
gởi qua kết nối TCP
máy khách và máy chủ
Kết nối sau đó sẽ bị đóng
Tải nhiều đối tượng yêu cầu
nhiều kết nối
HTTP – Thời gian đáp
ứng
HTTP/1.0 và HTTP/1.1
Sự khác biệt lớn giữa HTTP/1.0 và HTTP/1.1 là HTTP/1.0 sử dụng một kết nối mới cho mỗi
Yêu cầu/Phản hồi trao đổi, trong khi đó kết nối trong HTTP/1.1 có thể được sử dụng cho
một hoặc nhiều Request/Response (Yêu cầu/Phản hồi)

GET GET
POST POST
HEAD HEAD
PUT
DELETE
FTP
(File Transfer Protocol)
IMAP và POP3
Mô tả POP 3 IMAP
Email có thể được để lại trên "Để lại tin nhắn" thiết lập có thể Tự động
máy chủ được kích hoạt
Email với file đính kèm của nó Tự động "Tải về tất cả các tiêu đề và tập
trực tiếp tải về máy tính tin đính kèm" thiết lập có thể
được kích hoạt
Đọc tin nhắn mới Nhanh Sự chậm trễ khoảng 1-5 giây
Email Sao lưu Email sao lưu được thực Tự động email sao lưu
hiện bằng tay, trừ khi "để
lại tin nhắn trên máy chủ"
thiết lập cho phép.
Xóa email Email đã bị xóa đi thẳng vào Email đã bị xóa sẽ được đánh
"thư mục bị xóa" dấu trên tiêu đề của nó. Để loại
bỏ nó vĩnh viễn "Thông điệp
Purge Deleted"
DNS

(Domain Name
System)
Ví dụ về một gói tin SMTP
HELLO
MAIL
FROM

RCPT TO

DATA

QUIT
Cho một phiên làm việc của SMTP, hãy sắp xếp trình tự giao tiếp phía client cho đúng.

A HELLO, RCPT TO, DATA, QUIT, MAIL FROM

B HELLO, MAIL FROM, RCPT TO,DATA, QUIT

C HELLO, DATA, MAIL FROM, QUIT, RCPT TO

D HELLO, MAIL FROM, RCPT TO, DATA, QUIT


COOKIE

4 thành phần:
1) Dòng đầu cookie (cookie
header line) chứa của
thông điệp phản hồi
HTTP
2) Cookie header line chứa
trong thông điệp yêu
cầu HTTP kế tiếp
3) Tập tin cookie được lưu
trữ trên máy người dùng,
được quản lý bởi trình
duyệt của người dùng
4) Cở sở dữ liệu tại Web
Web Cache
• Giảm thời gian đáp ứng cho yêu cầu của máy khách
• Giảm lưu lượng trên đường liên kết truy cập ra Internet của một tổ chức
• Internet có rất nhiều đệm: cho phép những nhà cung cấp nội dung với lượng tài
nguyên “nghèo nàn” vẫn cung cấp nội dung một cách hiệu quả (chia sẻ tập tin P2P
cũng vậy)
DNS
Truy vấn tuần Máy chủ được hỏi sẽ trả lời với tên của
tự máy chủ quản lý vùng liên quan

Đẩy trách nhiệm phân giải tên cho máy chủ


Truy vấn đệ quy tên miền được hỏi
=>Tải nặng tại các tầng trên của hệ thống
phân cấp
Giả sử cần viết một ứng dụng trao đổi dữ liệu
mạng càng nhanh càng tốt, nên dùng giao thức
nào sau đây ?

A FTP

B TCP

C HTTP

D UDP
Phân tích một phần gói tin HTTP request từ trình duyệt gửi lên Web Server như sau:
GET /docs/index.html HTTP/1.1\r\n
Host: www-net.cs.umass.edu\r\n
Ta biết được một số thông tin về trình duyệt là:

Trình duyệt dùng kết nối không thường trực (non-persitent) và URL đầy đủ của trang
A web được yêu cầu là: www-net.cs.umass.edu/docs/index.html

Trình duyệt dùng kết nối thường trực (persitent) và URL đầy đủ của trang web được
B yêu cầu là: www-net.cs.umass.edu/docs/index.html

Trình duyệt dùng kết nối thường trực (persitent) và URL đầy đủ của trang web được
C yêu cầu là: www-net.cs.umass.edu/index.html

Trình duyệt dùng kết nối thường trực (persitent) và URL đầy đủ của trang web được
D yêu cầu là: www-net.cs.umass.edu
Trong một trang web có tham chiếu đến 10 file. Nếu sử dụng dịch vụ HTTP
không bền vững (non-persitent), thì chúng ta cần bao nhiêu RTT để hoàn
thành công việc trên ?

A 20 RTT

B 11 RTT

C 1 RTT

D 22 RTT
Cookies không bao gồm thành phần nào sau đây ?

A Dòng header Set-cookie: của thông điệp yêu cầu HTTP

B Cơ sở dữ liệu tại Website

Tập tin cookie được lưu trữ trên máy tính người dung, được
C
quản lý bởi trình duyệt của người dùng

D Dòng header Set-cookie: của thông điệp phản hồi HTTP


Trong quá trình phân giải tên miền,
việc đẩy trách nhiệm phân giải tên
cho máy chủ tên miền được gọi là:

A Truy vấn tương tác

B Truy vấn tuần tự

C Truy vấn đệ quy

D Truy vấn liên tục


Tính chất nào sau đây không được cung cấp bởi TCP service ?

A Điều khiển dòng

B Đảm báo hiệu suất tối thiểu

C Truyền tin cậy

D Điều khiễn nghẽn


Để phục vụ nhu cầu ngày càng gia tăng của người sử dụng trên máy trạm
(client) mà không cần nâng cấp năng lực phục vụ của server, ta có thể sử dụng:

A Web caches

B Web server

C Cookie

D NIC
HTTP/1.1 404 Not Found
Date: Thu, 13 Oct 2016 06:29:17 +000
Server: Apache/2.2.3 (CentOS)
Content-Length: 530 Phát biểu nào sau đây là SAI ?
Connection: Close
Content-type: text/html

A Web server được sử dụng là Apache/2.2.3

B Server trả về một nội dung có chiều dài là 530 bytes

C Server trả về thành công một trang web

D Server đang sử dụng HTTP phiên bản 1.1


CHƯƠNG

TẦNG
TRANSPORT
Các giao thức tầng transport trên
Internet
application

Tin cậy, truyền theo thứ transport


network

tự (TCP)
data link
physical
network

– Điền khiển tắt nghẽn


network data link
data link physical
physical
– Điều khiển luồng network
data link

– Thiết lập kết nối physical

network

Không tin cậy, truyền data link


physical

không theo thứ tự: UDP


network
data link
physical
– Không rườm rà, mở rộng network
data link application
“nổ lực tốt nhất” (best- physical
network transport

effort) của IP data link network


physical data link
physical

Không có các dịch vụ:


– Bảo đảm độ trễ
– Bảo đảm băng thông
Tầng Transport 3-82
UDP: User Datagram
Protocol [RFC 768]
“đơn giản,” “bare bones” Internet  Ứng dụng UDP:
transport protocol  Các ứng dụng đa
Dịch vụ “best effort” (“nổ lực tốt
phương tiện trực
tuyến (chịu mất
nhất”), các segment UDP mát(loss tolerant),
segments có thể bị: (cần tốc độ) (rate
– Mất mát sensitive) )
– Vận chuyển không theo  DNS
thứ tự đến ứng dụng
 SNMP
Connectionless (phi kết nối):
– Không bắt tay giữa bên  Truyền tin cậy trên
nhận và gửi UDP UDP:
– Mỗi segment UDP được xử  Thêm độ tin cậy tại
lý độc lập tầng application
 Phục hồi lỗi tại các
ứng dụng cụ thể! Tầng Transport 3-83
UDP: segment header
Độ dài được tính
32 bits bằng byte của
Số port nguồn Số port đích segment UDP, bao
gồm cả header
length checksum
Tại sao có UDP?
Không thiết lập kết nối (cái mà có
Dữ liệu thể gây ra độ trễ)
ứng dụng
Đơn giản: không trạng thái kết nối
(payload)
tại nơi gửi và nhận
Kích thước header nhỏ
Không điều khiển tắt nghẽn: UDP có
Định dạng segment UDP thể gửi dữ liệu nhanh như mong
muốn

Tầng Transport 3-84


UDP checksum

Mục tiêu: dò tìm “các lỗi” (các bit cờ được bật)


trong các segment đã được truyền
bên gửi: bên nhận:
Xét nội dung của Tính toán checksum của segment đã
segment, bao gồm các
trường của header, là nhận
chuỗi các số nguyên 16- Kiểm tra giá trị trên có bằng với giá
bit
trị trong trường checksum hay không:
checksum: bổ sung (tổng – NO – có lỗi xãy ra
bù 1) của các nội dung
segment – YES – không có lỗi. Nhưng có
thể còn lỗi khác nữa không?
Bên gửi đặt giá trị Xem phần sau….
checksum vào trường
checksum UDP

Tầng Transport 3-85


Giao thức nào dưới đây không đảm
bảo dữ liệu gửi đi có tới máy nhận
hoàn chỉnh hay không?

A TCP

B UDP

C ARP

D RARP
Cho 2 số nguyên 16 bit
1 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0
1 1 1 0 0 1 0 0 0 1 1 0 0 1 0 1
Kết quả tính check sum của 2 dãy số nguyên trên
là:

A 1000001001001100

B 1000001001001011

C 0111110110110011

D 0111110110110100
Internet checksum: ví dụ

Ví dụ: cộng 2 số nguyên 16 bit


1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

bit dư 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1

tổng 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0
checksum 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1

Lưu ý: khi cộng các số, bit nhớ ở phía cao nhất cần
được thêm vào kết quả

Tầng Transport 3-88


rdt1.0: truyền tin cậy trên 1 kênh tin cậy
Kênh cơ bản tin cậy hoàn toàn (underlying channel
perfectly reliable)
– không có bit lỗi
– không mất mát gói
Các FSMs riêng biệt cho bên gửi và nhận:
– Bên gửi gửi dữ liệu vào kênh cơ bản (underlying channel)
– Bên nhận đọc dữ liệu từ kênh cơ bản (underlying channel)

chờ gọi rdt_send(data) chờ gọi rdt_rcv(packet)


từ tầng từ tầng extract (packet,data)
trên packet = make_pkt(data) dưới deliver_data(data)
udt_send(packet)

bên gửi bên nhận

Tầng Transport 3-89


rdt2.0: kênh với các lỗi
Kênh cơ bản có thể đảo các bit trong packet
– checksum để kiểm tra các lỗi
Câu hỏi: làm sao khôi phục các lỗi:
– acknowledgements (ACKs): receiver explicitly
tells sender that pkt received OK
– negative acknowledgements (NAKs): receiver
explicitly tells sender that pkt had errors
– sender
Làm retransmits
thế nào đểpktcon on receipt
ngườiof NAK hồi
phục
new mechanisms
“lỗi” trong incuộc trò(beyond
rdt2.0 chuyện? rdt1.0):
– error detection
– receiver feedback: control msgs (ACK,NAK)
rcvr->sender

Tầng Transport 3-90


rdt2.0: kênh với các lỗi
Kênh cơ bản có thể đảo các bit trong packet
– checksum để kiểm tra các lỗi
Câu hỏi: làm sao khôi phục các lỗi:
– acknowledgements (ACKs): bên nhận thông báo rõ
ràng cho bên gửi rằng packet được nhận thành công
(OK)
– negative acknowledgements (NAKs): bên nhận
thông báo rõ ràng cho bên gửi rằng packet đã bị lỗi
– Bên gửi truyền lại gói nào được xác nhận là NAK
Các cơ chế mới trong rdt2.0 (sau rdt1.0):
– Phát hiện lỗi
– Phản hồi: các thông điệp điều khiển (ACK,NAK) từ
bên nhận đến bên gửi

Tầng Transport 3-91


rdt2.0 có lỗ hỏng nghiêm trọng!

Điều gì xảy ra nếu Xử lý trùng lặp:


ACK/NAK bị hỏng? Bên gửi truyền lại packet hiện
Bên gửi sẽ không biết thời nếu ACK/NAK bị hỏng
điều gì đã xảy ra ở bên
nhận! Bên gửi thêm số thứ tự vào trong
mỗi packet (sequence number)
Không thể đơn phương
truyền lại: có thể trùng Bên nhận hủy packet bị trùng lặp
lặp

dừng và chờ
Bên gửi gửi một
packet, sau đó chờ
phản hồi từ bên nhận
Tầng Transport 3-92
rdt2.1: bên gửi, xử lý các ACK/NAK
bị hỏng
rdt_send(data)
sndpkt = make_pkt(0, data, checksum)
udt_send(sndpkt) rdt_rcv(rcvpkt) &&
( corrupt(rcvpkt) ||
Wait for Wait for
ACK or
isNAK(rcvpkt) )
call 0 from
NAK 0 udt_send(sndpkt)
above
rdt_rcv(rcvpkt)
&& notcorrupt(rcvpkt) rdt_rcv(rcvpkt)
&& isACK(rcvpkt) && notcorrupt(rcvpkt)
&& isACK(rcvpkt)
L
L
Wait for Wait for
ACK or call 1 from
rdt_rcv(rcvpkt) && NAK 1 above
( corrupt(rcvpkt) ||
isNAK(rcvpkt) ) rdt_send(data)

udt_send(sndpkt) sndpkt = make_pkt(1, data, checksum)


udt_send(sndpkt)

Tầng Transport 3-93


Đểthực hiện truyền nhậ
n dữ liệ u tin cậy trên đường truyền có
lỗ
i ở cấp độbit, hai cơ chếđược sử dụ ng là: CheckSum đểphát
hiện lỗ
i ở cấ
p độbit, vàPhả n hồ
i từ má
y nhận (ACK: Má
y nhậ
n
gửi ACK đểnói rằng đãnhận gó
i tin dữ liệ u không bịlỗ
i, NAK:
Má
y nhận gửi NAK đểnói rằng đãnhận gó
i tin dữ liệu bịlỗ
i ).
Hã
y nêu vấn đềcủ a giả
i pháp trên?

Vấn đề là khi gói tin phải hồi ACK/NAK bị lỗi, máy gởi không biết chính xác dữ liệu đã
A truyền đến máy nhận có bị lỗi không.

Vấn đề là khi gói tin phải hồi ACK/NAK bị lỗi, máy gởi không biết chính xác dữ liệu đã
B truyền đến máy nhận có bị lỗi không.

Vấn đề là khi gói tin phải hồi ACK/NAK bị lỗi, máy gởi không biết chính xác dữ liệu đã
C truyền đến máy nhận có bị lỗi không.

Vấn đề là khi gói tin phải hồi ACK/NAK bị lỗi, máy gởi không biết chính xác dữ liệu đã
D truyền đến máy nhận có bị lỗi không.
rdt2.2: một giao thức không cần NAK

Chức năng giống như rdt2.1, chỉ dùng các ACK


Thay cho NAK, bên nhận gởi ACK cho gói cuối cùng
được nhận thành công
– Bên nhận phải rõ ràng chèn số thứ tự của gói vừa được
ACK
ACK bị trùng tại bên gửi dẫn tới kết quả giống như
hành động của NAK: truyền lại gói vừa rồi

Tầng Transport 3-95


rdt3.0: các kênh với lỗi và mất mát

Giả định mới: kênh Cách tiếp cận: bên gửi chờ
ACK trong khoảng thời
ưu tiên cũng có thể
gian “hợp lý”
làm mất gói (dữ liệu, Truyền lại nếu không có ACK
được nhận trong khoảng thời
các ACK) gian này
Nếu gói (hoặc ACK) chỉ trễ
– checksum, số thứ (không mất):
tự, các ACK, việc – Việc truyền lại sẽ gây
trùng, nhưng số thứ tự
truyền lại sẽ hổ đã xử lý trường hợp này
trợ…nhưng không – Bên nhận phải xác định
đủ số thứ tự của gói vừa gửi
ACK
Yêu cầu bộ định thì đếm lùi

Tầng Transport 3-96


Hành động của rdt3.0
bên gửi bên nhận bên gửi bên nhận
Gửi pkt0 pkt0 Gửi pkt0 pkt0
Nhận pkt0 Nhận pkt0
ack0 Gửi ack0 ack0 Gửi ack0
Nhận ack0 Nhận ack0
Gửi pkt1 pkt1 Nhận pkt1 pkt1
Nhận pkt1 X
ack1 Nhận ack1 loss
Nhận ack1
Nhận pkt0 pkt0
Gửi pkt0 timeout
ack0 Nhận ack0 Gửi lại pkt1 pkt1
Nhận pkt1
ack1 Gửi ack1
Nhận ack1
Gửi pkt0 pkt0
(a) Không mất mát Nhận pkt0
ack0 Gửi ack0

(b) Mất gói


Tầng Transport 3-97
Để đảm bảo quá trình truyền nhận dữ liệu đúng trên kênh truyền có
khả năng có lỗi hoặc mất gói tin xảy ra, sử dụng giao thức truyền dữ
liệu tin cậy rtd3.0, các điều kiện và thông số nào sau đây là cần
thiết:

A Checksum,sequential number,ACK,retransmission,timer

B Sidling window,go –back-n, selective repeat

C Checksum,sequential number,ACK,NAK,retransmission

D Slow start, congestion avoidance,fast retransmit,fast recovery


Hành động của rdt3.0
bên gửi bên nhận
bên gửi bên nhận Gửi pkt0 pkt0
Gửi pkt0 pkt0 Nhận pkt0
Gửi ack0
Nhận pkt0 ack0
Gửi ack0 Nhận ack0
ack0 Gửi pkt1 pkt1
Nhận ack0 Nhận pkt1
Gửi pkt1 pkt1
Gửi ack1
Nhận pkt1 ack1
ack1 Gửi ack1
X
loss timeout
resend pkt1 pkt1
Nhận pkt1
timeout
Gửi lại pkt1 pkt1 rcv ack1 (phát hiện trùng)
Nhận pkt1 send pkt0
pkt0
Gửi ack1
(phát hiện trùng gói) ack1
ack1 Gửi ack1 rcv ack1 Nhận pkt0
Nhận ack1 send pkt0
ack0 Gửi ack0
Gửi pkt0 pkt0 pkt0
Nhận pkt0
Nhận pkt0 ack0 (phát hiệ trùng)
ack0 Gửi ack0 Gửi ack0

(c) Mất ACK (d) premature timeout/ delayed ACK

Tầng Transport 3-99


Xem hình và cho biết đây là hành động nào của rdt 3.0?

A Không mất mát

B Mất gói tin dữ liệu

C Mất ACK

D Timeout/delayed ACK
Trong giao thức truyền tin cậy (rtd),giao thức nào sau đây xử lí được trường hợp mất gói
tin ACK:

A Rtd2.1

B Rtd3.0

C Rtd2.2

D Tất cả các đáp án trên


Các giao thức Pipelined
pipelining: bên gửi cho phép gửi nhiều gói
đồng thời, không cần chờ báo nhận được
– Nhóm các số thứ tự phải được tăng dần
– Phải có bộ nhớ đêm tại nơi gửi và/hoặc nhận

hai dạng phổ biến của các giao thức pipelined : go-
Back-N, lặp có lựa chọn
Tầng Transport 3-102
Pipelining: độ khả dụng tăng
bên gửi bên nhận
bit đầu tiên của gói được truyền, t = 0
bit cuối cùng của gói được truyền,
t=L/R

bit đầu tiên của packet đến


RTT bit cuối cùng của packet đến, gửi ACK
bit cuối cùng của packet thứ 2 đến, gửi ACK
bit cuối cùng của packet thứ 3 đến, gửi ACK
ACK arrives, send next
packet, t = RTT + L / R
3-packet pipelining tăng
độ khả dung lên gấp 3 lần!

U 3L / R .0024
sender = = = 0.00081
RTT + L / R 30.008

Tầng Transport 3-103


Pipelined protocols: tổng quan
Go-back-N: Lặp có lựa chọn (Selective
Bên gửi có thể có đến N packet Repeat):
không cần ACK trong đường ống ( Bên gửi có thể có đến N
pipeline) packet không cần ACK
Bên nhận chỉ gởi cumulative ack trong đường ống (pipeline)
– Sẽ không thông báo nhận Bên nhận gửi rcvr ack
packet thành công nếu có rieeng biệt (individual ack)
cho mỗi packet
một gián đoạn Bên nhận duy trì bộ định thì
bên gửi có bộ định thì cho packet cho mỗi packet không được
sớm nhất mà không cần ACK ACK
(oldest unacked packet)
– Khi bộ định thì của
– Khi bộ định thì hết, truyền packet nào hết hạn, thì
lại thất cả các packet mà chỉ truyền lại packet
không được ACK không được ACK đó

Tầng Transport 3-104


Go-Back-N: bên gửi
Số thứ tự k-bit trong header của packet
“cửa sổ”(“window”) lên đến N packet liên tiếp không cần ACK được cho
phép

 ACK(n): thông báo nhận tất cả các packet lên đến n,


bao gồm n số thứ tự - “ACK tích lũy”(“cumulative
ACK”)
 Có thể nhận ACK trùng (xem bên nhận)
 Định thì cho packet sớm nhất đang trong tiến trình xử
lý (oldest in-flight pkt)
 timeout(n): truyền lại packet n và tất cả các packet có
số thứ tự cao hơn trong cửa sổ (window) Tầng Transport 3-105
Hoạt động GBN
sender window (N=4) bên gửi bên nhận
012345678 send pkt0
012345678 send pkt1
012345678 send pkt2 receive pkt0, send ack0
012345678 send pkt3 Xloss receive pkt1, send ack1
(wait)
receive pkt3, discard,
012345678 rcv ack0, send pkt4 (re)send ack1
012345678 rcv ack1, send pkt5 receive pkt4, discard,
(re)send ack1
ignore duplicate ACK receive pkt5, discard,
(re)send ack1
pkt 2 timeout
012345678 send pkt2
012345678 send pkt3
012345678 send pkt4 rcv pkt2, deliver, send ack2
012345678 send pkt5 rcv pkt3, deliver, send ack3
rcv pkt4, deliver, send ack4
rcv pkt5, deliver, send ack5

Tầng Transport 3-106


Lặp có lựa chọn (Selective repeat)

Bên nhận thông báo đã nhận đúng tất cả từng


gói một
– Đệm các gói, khi cần thiết, cho sự vận chuyển
trong thứ tự ngẫu nhiên đến tầng cao hơn
Bên gửi chỉ gửi lại các packet nào mà ACK
không được nhận
– Bên gửi định thời cho mỗi packet không có gửi
ACK
Cửa sổ bên gửi (sender window)
– N số thứ tự liên tục
– Hạn chế số thứ tự các gói không gửi ACK

Tầng Transport 3-107


Hành động của lặp lại có lựa chọn
sender window (N=4) Bên gửi Bên nhận
012345678 gửi pkt0
012345678 gửi pkt1
012345678 gửi pkt2 nhận pkt0, gửi ack0
012345678 gửi pkt3 Xloss nhận pkt1, gửi ack1
(đợi)
nhận pkt3, buffer,
012345678 nhận ack0, gửi pkt4 gửi ack3
012345678 nhận ack1, gửi pkt5 nhận pkt4, buffer,
gửi ack4
Ghi nhận ack3 đã đến nhận pkt5, buffer,
gửi ack5
pkt 2 timeout
012345678 gửi pkt2
012345678 Ghi nhận ack4 đã đến
012345678 nhận pkt2; chuyển pkt2,
Ghi nhận ack4 đã đến
012345678 pkt3, pkt4, pkt5; gửi ack2

Q: việc gì xảy ra khi ack2 đến?

Tầng Transport 3-108


Xem hình mô tả hoạt động của Go-back-N dưới đây, sau thời
gian timeout, bên gửi sẽ hành động như thế nào?

A Gửi lại pkt2,pkt3,pkt4,pkt5

B Gởi lại pkt2

C Gửi lại pkt0,pkt1,pkt2,pkt3

D Gửi lại pkt1,pkt2,pkt3,pkt4


TCP: tổng quan RFCs: 793,1122,1323, 2018, 2581

point-to-point: Dữ liệu full duplex:


– Một bên gửi, một bên – Luồng dữ liệu đi 2 chiều
nhận trong cùng 1 kết nối
– MSS: kích thước tối đa
Tin cậy, dòng byte theo thứ của segment (maximum
segment size)
tự (in-order byte steam):
– Không “ranh giới thông Hướng kết nối:
điệp” (“message – Bắt tay (trao đổi các thông
boundaries”) điệp điều khiển) khởi tạo
trạng thái bên gửi và nhận
pipelined: trước khi trao đổi dữ liệu
– Điều khiển luồng và tắt Luồng được điều khiển:
nghẽn của TCP thiết lập – Bên gửi sẽ không áp đảo
kích thước cửa sổ bên nhận
(window size)

Tầng Transport 3-110


Cấu trúc segment TCP
segment
32 bits
URG: dữ liệu khẩn cấp Đếm bằng
(thường không dùng) port nguồn port đích
bytes dữ liệu
Số thứ tự (không bằng
ACK: ACK #
hợp lệ Số ACK segment!)
head Không
PSH: push data now len dùng UAP R S F receive window
(thường không dùng) Số byte
checksum Urg data pointer
bên nhận
sẵn sàng
RST, SYN, FIN: Tùy chọn (độ dài thay đổi)
thiết lập kết nối chấp nhận
(setup, teardown
commands)
Dữ liệu ứng dụng
Internet (độ dài thay đổi)
checksum
(giống như UDP)

Tầng Transport 3-111


Trong cấu trúc header của TCP Segment có 6 cờ là:

A SYN, ACK, PSH, RST, FIN, URG

B CON, ACK, PSH,RST, FIN,URG

C SYN,ACK, PSH,DAT,CON,URG

D SYN,DAT,PSH,RST,FIN,URG
Số thứ tự TCP và ACK
Segment đi ra từ bên gửi
Các số thứ tự: port nguồn
số thứ tự
port đích

–Dòng byte “đánh số” byte số ACK


đầu tiên trong dữ liệu của rwnd
segment checksum urg pointer

Các ACK: kích thước cửa sổ


N
– số thứ tự của byte kế
tiếp được mong đợi từ
phía bên kia
sender sequence number space
–ACK tích lũy
Hỏi: làm thế nào để bên nhận sent sent, not- usable not
ACKed yet ACKed but not usable
xử lý các segment không (“in- yet sent
theo thứ tự flight”)
Segment vào, đến bên gửi
–Trả lời: TCP không đề cập,
tùy thuộc người thực hiện
port nguồn port đích
số thứ tự
số ACK
A rwnd
checksum urg pointer

Tầng Transport 3-113


Mô tả quá trình bắt tay 3 bước trong kết nối TCP như hình:
Ở bước 2, host B sẽ gửi gói tin sang host A có trường ACK
number là bao nhiêu?

A X+1

B Y+1

C 0

D 11
Điều nào sau đây là đúng về bắt tay 3 bước của TCP

A FIN bit của gói đầu tiên được gán bằng 1

B SYN bit của gói đầu tiên được gán bằng 1

C Số seq của gói SYN đầu tiên luôn luôn là 0

D Gói TCP SYN đầu tiên được gửi ra từ phía server


Trong giao thức TCP, SYN segment sẽ có SEQ và giá trị SYN
flag là bao nhiêu?

A SEQ=ISN,SYN =1(ISN: initial sequence number)

B SEQ=1,SYN =1

C SEQ=ISN, SYN=0

D SEQ=0,SYN=0
Dựa trên hình dưới đây, giá trị của số thứ tự (SEQ)và ACK trong gói tin cuối cùng là
bao nhiêu?

A SEQ=80, ACK=50

B SEQ=40,ACK =80

C SEQ=40, ACK=50

D SEQ=80, ACK=50
TCP truyền dữ liệu tin cậy
TCP tạo dịch vụ rdt
trên dịch vụ không tin
cậy của IP
– Các segment pipelined
– Các ack tích lũy Lúc đầu khảo sát TCP đơn
– Bộ định thì truyền lại giản ở bên gửi:
đơn (single – Lờ đi các ack bị trùng
retransmission timer)
– Lờ đi điều khiển luồng
Việc truyền lại được và điều khiển tắt nghẽn
kích hoạt bởi:
– Sự kiện timeout
– Các ack bị trùng

Tầng Transport 3-118


TCP round trip time và
timeout
EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT
 Đường trung bình dịch chuyển hàm mũ
(exponential weighted moving average)
 ảnh hưởng của mẫu đã xảy ra sẽ làm giảm tốc
độ theo cấp số nhân
typical value:  = 0.125
RTT: gaia.cs.umass.edu to fantasia.eurecom.fr

350
RTT (milliseconds) RTT: gaia.cs.umass.edu to fantasia.eurecom.fr

300

250
RTT (milliseconds)

200

sampleRTT
EstimatedRTT
150

100
1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 106
time (seconnds) Tầng Transport 3-119
time (seconds)
SampleRTT Estimated RTT
TCP round trip time và
timeout
Khoảng thời gian timeout (timeout interval):
EstimatedRTT cộng với “biên an toàn”
– Sự thay đổi lớn trong EstimatedRTT -> an toàn biên lớn hơn
Ước lượng độ lệch SampleRTT từ EstimatedRTT:

DevRTT = (1-)*DevRTT +
*|SampleRTT-EstimatedRTT|
(typically,  = 0.25)

TimeoutInterval = EstimatedRTT + 4*DevRTT

estimated RTT “biên an toàn”

Tầng Transport 3-120


Xem thủ tục ước lượng RTT của TCP: Giả sử một kết nối TCP có 4 segment ACK quay
về bên gửi và nhờ đó người ta đo được thời gian đi-về của segment thứ nhất
(SampleRTT1) là 90 msec, thứ hai (SampleRTT2) là 110 msec, thứ ba (SampleRTT3) là
114 msec, và thứ tư (SampleRTT4) là 88msec. Giả sử hệ số anpha=0.2.Người ta ước
lượng đucợ giá trị EstimatedRTT ngay sau khi ACK thứ tư quay về là:

A 92.88 msec

B 96 msec

C Các lựa chọn đều sai.

D 100.5 msec
TCP: tình huống truyền lại
Host A Host B Host A Host B

SendBase=92
Seq=92, 8 bytes of data Seq=92, 8 bytes of data

Seq=100, 20 bytes of data


timeout

timeout
ACK=100
X
ACK=100
ACK=120

Seq=92, 8 bytes of data Seq=92, 8


SendBase=100 bytes of data
SendBase=120
ACK=100
ACK=120

SendBase=120

Tình huống mất ACK Timeout sớm


Tầng Transport 3-122
TCP: tình huống truyền lại
Host A Host B

Seq=92, 8 bytes of data

Seq=100, 20 bytes of data


timeout

ACK=100
X
ACK=120

Seq=120, 15 bytes of data

ACK tích lũy


Tầng Transport 3-123
TCP truyền lại nhanh
Chu kỳ time-out thường
TCP truyền lại nhanh
tương đối dài:
– Độ trễ dài trước khi
Nếu bên gửi nhận 3 ACK
gởi lại packet bị mất của cùng 1 dữ liệu (“3
ACK trùng”), thì gửi lại
Phát hiện các segment segment chưa được
bị mất thông qua các ACK với số thứ tự nhỏ
ACKs trùng. nhất
– Bên gửi thường gửi  Có khả năng
nhiều segment song segment không được
song ACK đã bị mất, vì
– Nếu segment bị mất, thế không đợi đến
thì sẽ có khả năng có thời gian timeout
nhiều ACK trùng.

Tầng Transport 3-124


TCP truyền lại nhanh
Host A Host B

Seq=92, 8 bytes of data


Seq=100, 20 bytes of data
X

ACK=100

timeout
ACK=100
ACK=100
ACK=100
Seq=100, 20 bytes of data

Truyền lại nhanh sau khi


bên gửi nhận 3 lần ACK bị trùng Tầng Transport 3-125
TCP điều khiển tắt nghẽn: additive increase,
multiplicative decrease
 Hướng tiếp cận: bên gửi tăng tốc độ truyền (kích thước
cửa sổ), thăm dò băng thông có thể sử dụng, cho đến
khi mất mát gói xảy ra
 additive increase: tăng cwnd bởi 1 MSS mỗi RTT cho
đến khi mất gói xảy ra
 multiplicative decrease: giảm một nữa cwnd sau khi
mất gói xảy ra
additively increase window size …
…. Cho đến khi mất gói xảy ra

congestion window size


(thì giảm một nữa kích thước cửa sổ)
cwnd: TCP sender
AIMD saw tooth
behavior: thăm dò
băng thông

time
Tầng Transport 3-126
TCP điều khiển tắt nghẽn: chi tiết
sender sequence number space
cwnd
TCP tốc độ gửi:
Ước lượng: gửi các byte
cwnd, đợi ACK trong
last byte last byte khoảng thời gian RTT, sau
ACKed sent, not- sent
yet ACKed đó gởi thêm các byte
(“in-
flight”) cwnd
Bên gửi giới hạn truyền tải: rate
~
~
RTT
bytes/sec

LastByteSent- < cwnd


LastByteAcked
cwnd thay đổi, chức năng nhận biết tắt nghẽn trên
mạng

3-
Tầng Transport 127
TCP Slow Start
Host A Host B
Khi kết nối bắt đầu, tăng
tốc độ theo cấp số nhân
cho đến sự kiện mất gói

RTT
đầu tiên xảy ra:
– initially cwnd = 1 MSS
– Gấp đôi cwnd mỗi RTT
– Được thực hiện bằng
cách tăng cwnd cho mỗi
ACK nhận được
Tóm lại: tốc độ ban đầu
chậm, nhưng nó sẽ tăng lên
theo cấp số nhân time

Tầng Transport 3-128


TCP: phát hiện, phản ứng khi mất gói

Mất gói được chỉ ra bởi timeout:


– cwnd được thiết lặp 1 MSS;
– Sau đó kích thước cửa sổ sẽ tăng theo cấp số nhân (như trong slow start) đến ngưỡng,
sau đó sẽ tăng tuyến tính
Mất gói được xác định bởi 3 ACK trùng nhau: TCP RENO
– Các ACK trùng lặp chỉ ra khả năng truyền của mạng
– cwnd bị cắt một nữa sau đó tăng theo tuyến tính
TCP Tahoe luôn luôn thiết lặp cwnd bằng 1(timeout hoặc 3 ack trùng nhau)

Tầng Transport 3-129


TCP: chuyển từ slow start qua CA
Hỏi: khi nào tăng cấp số nhân
nên chuyển qua tuyến tính?
Trả lời: khi cwnd được 1/2 giá
trị của nó trước thời gian
timeout.

Thực hiện:
ssthresh thay đổi
Khi mất gói, ssthresh được
thiết lặp về chỉ 1/2 của cwnd
trước khi mất gói

Tầng Transport 3-130


Để quản lí nghẽn(congestion) trong TCP, máy gửi duy trì tham số CWin để chỉ số bytes mà nó có thể gửi
trước khi nhận được phản hồi từ máy nhận.Bên cạnh đó, máy gửi còn sử dụng một tham số khác là slow
start threshold: SSThershold (đơn vị byte). Khi CWin > SSThreshold thì máy gửi sẽ rất cẩn trọn để tránh
gây ra congestion.
Giả định rằng SSThreshold =4000 bytes, CWin =8000 bytes, kích thước của gói tin là 500 bytes.Máy gửi
gửi 16 gói tin và nhận được 16 phản hồi. Hỏi giá trị của SSThreshold và CWin sau khi đã nhận được phản
hồi là gì ?

A SSThreshold =4000 bytes, CWin =8000 bytes

B SSThreshold =4000 bytes, CWin =8500 bytes

C SSThresshold=8000 bytes,CWin=8000 bytes

D SSThresshold=8000 bytes,CWin=4000 bytes


Trong TCP RENO, khi gặp 3 ACK trùng nhau, thì giá trị của
congestion window được thiết lập lại bao nhiêu?

A Bị cắt một nửa

B Vẫn giữ giá trị như trước khi gặp 3 ACK trùng nhau

C 1

D 0
Trong các giao thức giao vận Internet, giao thức nào có liên
kết:

A UDP

B TCP

C TCP và UDP

D Không phải các đáp án trên


Điều gì là đúng đối với các giao thức dạng connectionless
(không kết nối)?

A Hoạt động chậm hơn các giao thức dạng connection-oriented

Các gói dữ liệu có phần header phức tạp hơn so với giao thức
B
dạng connection-oriented

C Cung cấp một dịch vụ phân phát dữ liệu không đáng tin cậy

Nút gửi phải truyền lại những dữ liệu đã bị mất trên đường
D
truyền.
Gói tin TCP yêu cầu kết nối sẽ có giá trị của các cờ ?

A RST=1, SYN=1

B ACK=1, SYN=1

C ACK=0, SYN=1

D ACK=1, SYN=0
Diễn giải khác biệt chủ yếu giữa TCP và UDP là:

A TCP: truyền tin có bảo đảm. UDP: truyền tin không bảo đảm

B TCP: không có điều khiển luồng. UDP: có điều khiển luồng

C TCP: truyền nhanh. UDP: truyền chậm

D TCP: được sử dụng phổ biến. UDP: ít được sử dụng


Giả sử Host A muốn gửi một file có kích thước 3 triệu bytes đến Host
B.Từ Host A đến Host B có 3 đoạn đường truyền nối tiếp nhau, với tốc
độ truyền tương ứng là R1=1Mbps,R2=5Mbps,R3=2Mbps.Thời gian
truyền file đến host B là:

A 24s

B 3s

C 4.8s

D 12s
Bên gửi gửi 1 TCP Segment có Sequence Number =92,và phần
Payload (data)=8 bytes.Bên nhận sẽ trả lời với Acknowledgement
Number là bao nhiêu để báo nhận thành công TCP Segment này?

A 100

B 93

C 92

D 8
Giả sử Host A muốn gửi một file có kích thước lớn đến Hot B. Từ Host A đến Host B có
3 đoạn truyền được nối tiếp nhau, với tốc độ truyền tương ứng là R1=500 Kbps,R2=2
Mbps, R3=1Mbps.Giả sử không có dữ liệu nào khác được truyền trên mạng. Thông
lượng đường truyền (throughput) từ Host A đến Host B là:

A 500Kbps

B 3500/3 Mbps

C Không có đáp án đúng

D 1 Mbps
Những tính chất nào sau đây không được cung cấp bởi TCP Service?

A Điều khiển luồn (Flow control)

B Đảm bảo hiệu suất tối thiểu (Minimum throught guarantee)

C Truyền tin cậy (Reliable transmission)

D Điều khiển tắc nghẽn (Congestion control )


Đường truyền có băng thông 1 Gbps có nghĩa là:

A 1024 Mbps

B 1000000000 bps

C 1024 x1024 x1024 bps

D 1000000 KBps
Tính hiệu suất(utilization) của giao thức dừng và chờ (stop and wait protocol ),Với Giả
thuyết: kích thước gói tin là 2KB, đường link (transmission rate) là 100Mbps, độ trễ lan
truyền giữa hai đầu cuối (end-end delay) là 15ms. Lưu ý : 1MB làm tròn thành 1000KB
và tìm câu trả lời gần với đáp số nhất.

A 0.003

B 0.005

C 0.006

D 0.001
Xem hình vẽ đây là tình huống nào:

A Mất ACK

B Timeout sớm.

C ACK tích lũy

D Truyền lại nhanh

You might also like