Dưới đây là bài giảng Truyền thông kỹ thuật số: Chương 7 do Trịnh Huy Hoàng biên soạn. Bài giảng giúp cho các bạn hiểu được ứng dụng; công nghệ chuyển mạch gói; tìm đường; X.25. Mời các bạn tham khảo bài giảng để bổ sung thêm kiến thức về lĩnh vực này.
Trang 3Chuy n m ch gói ể ạ
Chuy n m ch m ch đ ể ạ ạ ượ c thi t k đ truy n tho i ế ế ể ề ạ
Các tài nguyên được dành riêng cho cu c g iộ ọ
H u h t th i gian là k t n i d li u r nh ầ ế ờ ế ố ữ ệ ả
T c đ d li u c đ nhố ộ ữ ệ ố ị
Thi t b c 2 đ u ph i ch y cùng t c đ ế ị ả ầ ả ạ ố ộ
Công ngh chuy n m ch gói ệ ể ạ
Trang 4Chuy n m ch gói – Nguyên lý ể ạ
D li u đữ ệ ược truy n theo gói nhề ỏ
Thông th ườ ng là 1000 octet / gói
Các thông đi p l n h n đ ệ ớ ơ ượ c chia thành m t chu i các gói nh ộ ỗ ỏ
M i gói ch a m t ph n d li u c a ng ỗ ứ ộ ầ ữ ệ ủ ườ i dùng và các thông tin đi u ề khi n ể
Thông tin đi u khi nề ể
Ch a thông tin cho vi c tìm đ ứ ệ ườ ng (đ a ch ) ị ỉ
Các gói được nh n, l u t m th i (đ m) và chuy n cho node k ậ ư ạ ờ ệ ể ế
ti p ế
L u và chuy n (store and forward) ư ể
Trang 5Chuy n m ch gói – u đi m ể ạ Ư ể
Hi u qu s d ng đệ ả ử ụ ường truy nề
Liên k t đ n nodenode có th dùng chung b i nhi u gói ế ơ ể ở ề
Các gói đ ượ c x p hàng và truy n đi nhanh nh t có th ế ề ấ ể
Chuy n đ i t c đ d li uể ổ ố ộ ữ ệ
M i tr m k t n i v i node c c b v i t c đ c a nó ỗ ạ ế ố ớ ụ ộ ớ ố ộ ủ
Các node đ m d li u n u c n thi t đ cân b ng t c đ ệ ữ ệ ế ầ ế ể ằ ố ộ
Các gói được ch p nh n ngay khi m ng đang b nấ ậ ạ ậ
Vi c phát có th ch m l i ệ ể ậ ạ
Thông báo có th có các đ u tiên khác nhauể ộ ư
Trang 6Chuy n m ch gói – K thu t ể ạ ỹ ậ
Tr m chia thông báo dài thành nhi u gói nh ạ ề ỏ
Các gói đ ượ c g i l n l ở ầ ượ t vào m ng ạ
Các gói đ ượ c x lý theo 2 cách ử
Virtual circuit
Trang 7Chuy n m ch gói – K thu t ể ạ ỹ ậ
Datagram
M i gói đỗ ược x lý đ c l pử ộ ậ
Các gói có th đi theo b t c để ấ ứ ường thích h p nàoợ
Các gói có th đ n đích không theo th t g iể ế ứ ự ở
Các gói có th th t l c trên để ấ ạ ường đi
Nhi m v c a bên nh n là s p x p l i các gói m t tr t t và ệ ụ ủ ậ ắ ế ạ ấ ậ ựkhôi ph c các gói th t l cụ ấ ạ
Trang 8Chuy n m ch gói Datagram ể ạ
Trang 9Chuy n m ch gói Datagram ể ạ
Trang 10Chuy n m ch gói – K thu t ể ạ ỹ ậ
Virtual circuit
Đ ườ ng đi đ nh s n đã đ ị ẵ ượ ạ c t o tr ướ c khi g i các gói đi ở
Các gói yêu c u cu c g i và ch p nh n cu c g i đ ầ ộ ọ ấ ậ ộ ọ ượ c dùng đ t o k t ể ạ ế
n i (handshake) ố
M i gói ch a thông tin v đ ỗ ứ ề ườ ng đi “ o” thay vì thông tin đ a ch đích ả ị ỉ
Không c n quy t đ nh tìm đ ầ ế ị ườ ng cho các gói
Yêu c u xóa đ h y k t n i ầ ể ủ ế ố
Không ph i là m t đ ả ộ ườ ng dành riêng
M i đ ỗ ườ ng o đ ả ượ c gán m t mã s riêng (Virtual Circuit Identifier – ộ ố
Trang 11Chuy n m ch gói – Virtual Circuit ể ạ
Trang 12Chuy n m ch gói – Virtual Circuit ể ạ
Trang 13 Virtual circuit
M ng có th cung c p s tu n t và đi u khi n l i ạ ể ấ ự ầ ự ề ể ỗ
Các gói được chuy n nhanh h nể ơ
Không c n các quy t đ nh tìm đ ầ ế ị ườ ng
Trang 14Kích th ướ c gói
Trang 16Circuit Switching Datagram Packets Virtual Circuit Packets
Đ ườ ng truy n d n dành riêng ề ẫ Đ ườ ng truy n d n không dành riêng ề ẫ Đ ườ ng truy n d n không dành riêng ề ẫ
D li u truy n liên t c ữ ệ ề ụ D li u truy n theo gói ữ ệ ề D li u truy n theo gói ữ ệ ề
Đ nhanh cho ng d ng t ủ ứ ụ ươ ng tác Đ nhanh cho ng d ng t ủ ứ ụ ươ ng tác Đ nhanh cho ng d ng t ủ ứ ụ ươ ng tác
Thông báo không đ ượ ư c l u tr ữ Thông báo có th đ ể ượ ư c l u tr cho ữ
Tín hi u b n n u bên nh n không ệ ậ ế ậ
s n sàng ẵ Ng ườ ở i g i có th đ ể ượ c thông báo
n u các gói không đ ế ượ c phân phát Ng ườ ở ượ i g i đ c thông báo n u các ế
gói không đ ượ c phân phát
Trang 17Circuit Switching Datagram Packets Virtual Circuit Packets
Quá t i s khóa vi c thi t l p; ả ẽ ệ ế ậ
không tr khi đ ễ ườ ng truy n đã ề
đ ượ c thi t l p ế ậ
Quá t i s tăng th i gian tr c a ả ẽ ờ ễ ủ gói Quá t i có th khóa vi c thi t
l p; tăng th i gian tr c a gói ậ ờ ễ ủ
Chuy n m ch c đi n ho c đ ể ạ ơ ệ ặ ượ c
đi u khi n b i máy tính ề ể ở Node chuy n m ch nh ể ạ ỏ Node chuy n m ch nh ể ạ ỏ
User ch u trách nhi m khi các ị ệ
Chuy n đ i t c đ và b ng mã ể ổ ố ộ ả Chuy n đ i t c đ và b ng mã ể ổ ố ộ ả
Truy n d n băng thông c đ nh ề ẫ ố ị Linh đ ng s d ng băng thông ộ ử ụ Linh đ ng s d ng băng thông ộ ử ụ
Không t n chi phí d li u sau khi ố ữ ệ
thi t l p ế ậ T n kém d li u cho m i gói ố ữ ệ ỗ T n kém d li u cho m i gói ố ữ ệ ỗ
Trang 18Ho t đ ng bên ngoài – bên trong ạ ộ
Chuy n m ch gói datagrams ho c virtual circuits ể ạ ặ
Giao ti p gi a tr m và node m ng ế ữ ạ ạ
K t n i (Connection oriented)ế ố
Tr m yêu c u k t n i lu n lý (virtual circuit) ạ ầ ế ố ậ
T t c các gói đ ấ ả ượ c đánh d u thu c v k t n i đó và đ ấ ộ ề ế ố ượ c đánh s ố
Trang 19 Ng ườ i dùng ngồi khơng th y các k t n i ấ ế ố
Ng ườ i dùng ngồi g i t ng gĩi m t ở ừ ộ
M ng thi t l p k t n i lu n lý ạ ế ậ ế ố ậ
T i sao ph i t n chi phí nh ng khơng cĩ l i gì ? ạ ả ố ư ợ
ARPANET (packet)
X.25 ARPANET (packet, message) Datagram
Not used
IBM SNA TYMNET V.C
Dịch vụ bên trong
Datagram V.C.
Dịch vụbên ngoài
Ứng dụng
ARPANET (packet)
X.25 ARPANET (packet, message) Datagram
Not used
IBM SNA TYMNET V.C
Dịch vụ bên trong
Datagram V.C.
Dịch vụbên ngoài
Ứng dụng
Trang 20External Virtual Circuit and Datagram Operation
Trang 21Internal Virtual Circuit and Datagram Operation
Trang 23Chi phí các đ ườ ng đi
Trang 24Y u t quy t đ nh chi n thu t tìm đ ế ố ế ị ế ậ ườ ng
Ngu n thông tin m ng và th i đi m c p nh t thông tin ồ ạ ờ ể ậ ậ
Quy t đ nh tìm đ ế ị ườ ng thông th ườ ng (không ph i luôn luôn) đ ả ượ c d a trên các ự thông tin v m ng ề ạ
Tìm đ ườ ng phân tán (Distributed routing)
Node s d ng các thông tin c c b ử ụ ụ ộ
Có th thu th p thông tin t các node k c n ể ậ ừ ế ậ
Có th thu th p thông tin t các node trên đ ể ậ ừ ườ ng ti m năng ề
Trang 25Chi n thu t tìm đ ế ậ ườ ng
Chi n thu t (Routing Strategies) ế ậ
Fixed routing
Flooding routing
Trang 26 Đ ườ ng đi đ ượ c xác đ nh dùng ị
gi i thu t chi phí t i thi u ả ậ ố ể
Đ ườ ng c đ nh ít ra cho đ n khi ố ị ế
có s thay đ i c u hình m ng ự ổ ấ ạ
Trang 27 Không c n thông tin m ng ầ ạ
Node g i các gói t i m i node k (láng gi ng) ở ớ ỗ ề ề
Các gói nh n đậ ượ ẽ ược s đ c truy n trên t t c các k t n i ngo i ề ấ ả ế ố ạ
tr k t n i đ nừ ế ố ế
Cu i cùng s có m t s copy c a gói s đ n đích ố ẽ ộ ố ủ ẽ ế
M i gói đỗ ược đánh s duy nh t sao cho các copy trùng nhau s ố ấ ẽ
b lo i b ị ạ ỏ
Node có th ghi nh các gói đã đi qua, giúp cho m ng không quá ể ớ ạ
t i nhi u ả ề
Có th ch a s ch ng để ứ ố ặ ường (hop) trong các gói, được dùng đ ể
gi i h n hay k t thúc quá trình truy nớ ạ ế ề
Trang 29R R P
Trang 30 Đượ ử ục s d ng b i h u h t các m ng chuy n m ch gói ở ầ ế ạ ể ạ
Quy t đ nh tìm đế ị ường thay đ i khi các đi u ki n trên m ng thay ổ ề ệ ạ
Trang 32 M t trong nh ng ph ộ ữ ươ ng pháp đ n gi n nh t c a tìm đ ơ ả ấ ủ ườ ng đ ng, phù h p ộ ợ
v i các m ng có kích th ớ ạ ướ c nh và ho t đ ng ỏ ạ ộ
t ươ ng đ i n đ nh ố ổ ị
Ít dùng (không dùng thông tin có s n) ẵ
Trang 33 Distributed Adaptive Routing
Trong ph ươ ng pháp này, thông tin v tình tr ng ho t đ ng hi n hành c a ề ạ ạ ộ ệ ủ
m ng s đ ạ ẽ ượ c đ nh k trao đ i, c p nh t gi a các node trong toàn m ng. ị ỳ ổ ậ ậ ữ ạ Sau đó thông tin này s đ ẽ ượ c phân b v l i các node trong m ng hay ố ề ạ ạ
m t s node trong m ng làm nhi m v tìm đ ộ ố ạ ệ ụ ườ ng đ các node này c p ể ậ
nh t l i b ng routing ậ ạ ả
Ph ươ ng pháp này đáp ng đ ứ ượ c v i nh ng thay đ i tr ng thái c a m ng, ớ ữ ổ ạ ủ ạ
nh ng đ ng th i cũng làm tăng l u l ư ồ ờ ư ượ ng thông tin trong m ng ạ
Trong ph ươ ng pháp này, thông tin v tình tr ng ho t đ ng hi n hành c a ề ạ ạ ộ ệ ủ
m ng s đ ạ ẽ ượ c đ nh k trao đ i, c p nh t gi a các node trong toàn m ng. ị ỳ ổ ậ ậ ữ ạ Sau đó thông tin này s đ ẽ ượ ậ c t p trung v m t máy ch trong m ng làm ề ộ ủ ạ nhi m v routing ệ ụ
Tuy đáp ng đ ứ ượ c v i nh ng thay đ i t c th i trong m ng nh ng ớ ữ ổ ứ ờ ạ ư
ph ươ ng pháp này có nh ượ c đi m là thông tin routing trong toàn m ng t p ể ạ ậ trung v m t máy nên khi máy này không ho t đ ng thì toàn m ng s ề ộ ạ ộ ạ ẽ không ho t đ ng đ ạ ộ ượ c
Trang 35 M: t p các đ nh đã xét t i b ậ ỉ ạ ướ c ch y hi n hành c a gi i thu t ạ ệ ủ ả ậ
dij : tr ng s trên c nh n i t node i đ n node j ọ ố ạ ố ừ ế
dij = 0 n u i trùng j ế
Trang 36 Bước 2: c p nh t đậ ậ ường đi ng n nh tắ ấ
Ch n đ nh N ọ ỉ V sao cho: DN = min {Di} i V\M
Dj = min {Dj, DN + dNj } j V\M
Bước 3: l p l i bặ ạ ước 2 cho đ n khi M=Vế
K t qu Dế ả i s là đẽ ường đi ng n nh t t node ngu n S đ n ắ ấ ừ ồ ếnode i
Trang 37Gi i thu t Dijkstra ả ậ
Tìm đ ườ ng đi ng n nh t t node ngu n 1 đ n t t c các node còn l i ắ ấ ừ ồ ế ấ ả ạ
Node 2 Node 3 Node 4 Node 5 Node 6
5
Trang 38Gi i thu t Dijkstra ả ậ
Trang 39 Đ th có chu trình âm ồ ị không t n t i đ ồ ạ ườ ng đi ng n nh t ắ ấ
Đ ườ ng đi ng n nh t t đ nh ngu n S đ n t t c các đ nh còn l i ắ ấ ừ ỉ ồ ế ấ ả ỉ ạ
Trang 40Gi i thu t Bellman – Ford ả ậ
Gi i thu t ả ậ
Bước 1: kh i đ ngở ộ
D(1)N = dSN, N V\{S}
(đường đi ng n nh t t S đ n N có t i đa 1 đo n)ắ ấ ừ ế ố ạ
Bước 2: c p nh t đậ ậ ường đi ng n nh tắ ấ
Trang 41Gi i thu t Bellman – Ford ả ậ
Tìm đ ườ ng đi ng n nh t t node ngu n 1 đ n t t c các node còn l i ắ ấ ừ ồ ế ấ ả ạ
Node 2 Node 3 Node 4 Node 5 Node 6
5
Trang 42Gi i thu t Bellman – Ford ả ậ
Trang 43Bài t p ậ
Tìm đ ườ ng ng n nh t t node 1 ắ ấ ừ
Theo gi i thu t Dijkstraả ậ
Theo gi i thu t Bellman – Ford ả ậ
3
3 54
3
Trang 44Bài t p ậ
Tìm đ ườ ng ng n nh t t node 1 ắ ấ ừ
Theo gi i thu t Dijkstraả ậ
Theo gi i thu t Bellman – Ford ả ậ
1
1 1
4 5
Trang 45 Có th trao đ i thông tin v i các node k tr c ti p ể ổ ớ ề ự ế
Có th c p nh t thông tin v chi phí và đ ể ậ ậ ề ườ ng đi d a trên các thông tin ự trao đ i v i các node k và các thông tin v chi phí liên k t ổ ớ ề ề ế
Dijkstra
M i node c n bi t topology toàn b m ng ỗ ầ ế ộ ạ
Ph i bi t chi phí liên k t c a t t c các liên k t trong m ng ả ế ế ủ ấ ả ế ạ
Ph i trao đ i thông tin v i t t c các node khác trong m ng ả ổ ớ ấ ả ạ
Trang 46 Ph thu c vào th i gian x lý c a các gi i thu tụ ộ ờ ử ủ ả ậ
Ph thu c vào lụ ộ ượng thông tin yêu c u t các node khácầ ừ
Ph thu c vào vi c hi n th cụ ộ ệ ệ ự
Cùng h i t v m t l i gi i dộ ụ ề ộ ờ ả ưới đi u ki n topology tĩnh và chi ề ệphí không thay đ iổ
N u chi phí liên k t thay đ i, các gi i thu t s tính l i đ theo ế ế ổ ả ậ ẽ ạ ể
k p s thay đ iị ự ổ
N u chi phí liên k t thay đ i theo l u thông, l u thông l i thay ế ế ổ ư ư ạ
đ i theo đổ ường đi được ch nọ
Ph n h i ả ồ
Có th r i vào tr ng thái không n đ nh ể ơ ạ ổ ị
Trang 47 Dùng gi i thu t tìm đả ậ ường BellmanFord
Các node trao đ i thông tin (các vector th i gian tr ) v i các ổ ờ ễ ớnode k ề
C p nh t b ng tìm đậ ậ ả ường d a trên thông tin đ n ự ế
Không quan tâm đ n t c đ đế ố ộ ường truy n, ch quan tâm ề ỉ
chi u dài hàng đ i t i các node ề ợ ạ
Chi u dài hàng đ i không ph i là cách đo chính xác c a th i ề ợ ả ủ ờgian tr ễ
Đáp ng ch m v i ngh n m chứ ậ ớ ẽ ạ
Trang 48ARPANET – Tìm đ ườ ng
Th h th 2 ế ệ ứ
1979
Dùng th i gian tr làm tiêu chu n đánh giá hi u qu ờ ễ ẩ ệ ả
Th i gian tr đờ ễ ược đo tr c ti p ự ế
Dùng gi i thu t tìm đả ậ ường Dijkstra
Vi c tính toán chi phí c a liên k t đã đệ ủ ế ược thay đ i ổ
Th i gian tr trung bình đờ ễ ược đo trong 10 giây cu i ố
Trang 50 Gói
External virtual circuits
Trang 51 Virtual circuit đ ượ c gán tr ướ ố ị c c đ nh
Không c n thi t l p và xóa k t n i ầ ế ậ ế ố
Fast Select call
Dùng đ truy n ể ề thông báo/l nh nh ệ ỏ (<128 octet) trong quá trình thi t l p/xóa k t n i ế ậ ế ố
Trang 52X.25 – Đ nh d ng gói ị ạ
Trang 53X.25 – Gói d li u ữ ệ
S VC (12 bits) – 4 bit logical group number + 8 bit logical channel number. ố
Thông th ườ ng 2 tr ườ ng này đ ượ c xem nh m t ư ộ
Dùng đ ch th lo i k t n i ho c kênh gi a các DTE ể ỉ ị ạ ế ố ặ ữ
Các lo i k t n i khác nhau cho phép nhi u phiên giao d ch gi a cùng m t c p DTE ạ ế ố ề ị ữ ộ ặ
Có th lên đ n 4095 kênh lu n lý trên cùng m t đ ể ế ậ ộ ườ ng giao ti p v t lý ế ậ
Q bit (Qualifier bit) – không đ ượ c đ nh nghĩa trong chu n, th ị ẩ ườ ng phân bi t các gói ệ
ch a d li u (i.e. user information Q=0) và các gói ch a thông tin đi u khi n (Q=1) ứ ữ ệ ứ ề ể
M bit (More bit) – ch th nhi u gói s ti p theo ỉ ị ề ẽ ế
M ng chuy n gói công c ng có kích th ạ ể ộ ướ c gi i h n cho các gói (thông báo s đ ớ ạ ẽ ượ c phân thành nhi u gói ề
Ngo i tr gói cu i cùng, các gói s có bit M đ ạ ừ ố ẽ ượ c b t (M=1) ậ
D bit – b ng 0 khi gói này là m t ph n c a gói b phân m nh, b ng 1 khi gói đ ằ ộ ầ ủ ị ả ằ ượ c tái
h p ợ
Cũng đ ượ c dùng đ đi u khi n dòng ể ề ể
Khi D=0, đi u khi n dòng đ ề ể ượ c th c hi n c c b (gi a DTE và c c b DCE) ự ệ ụ ộ ữ ụ ộ
Khi D=1, đi u khi n dòng đ ề ể ượ c th c hi n gi a DTE và DTE xa ự ệ ữ ở
P(R) – ch s nh n tu n t ỉ ố ậ ầ ự
P(S) – ch s g i tu n t ỉ ố ở ầ ự
Trang 54 Clear Request dùng đ xóa VC (đ ể ượ c ch ra trong VC number) ỉ
Reset Request đ ượ c dùng đ reset ch s nh n/g i tu n t v 0 trong ch đ ể ỉ ố ậ ở ầ ự ề ế ộ
Trang 55 Được truy n trong quá trình truy n d li u, và không ch a ề ề ữ ệ ứ
ch s g i/nh n tu n t Nghĩa là gói ng t quãng không là đ i ỉ ố ở ậ ầ ự ắ ố
tượng c a quá trình đi u khi n dòng (đi u khi n dòng đủ ề ể ề ể ược
b qua và các gói ng t quãng đỏ ắ ược truy n t i DTE đích v i ề ớ ớ
đ u tiên cao h n các gói d li u)ộ ư ơ ữ ệ
Trang 57 Tùy vào các protocol c p cao đ khôi ph c l i các gói b m t ấ ể ụ ạ ị ấ
Kích ho t b i vi c m t các gói, sai s tu n t , ngh n m ch, ạ ở ệ ấ ố ầ ự ẽ ạ
m t internal virtual circuitấ
Restart
Tương đương v i yêu c u xóa t t c các virtual circuitớ ầ ấ ả
E.g. m t t m th i vi c truy c p m ngấ ạ ờ ệ ậ ạ
Trang 58X.25 – Th t c thi t l p k t n i ủ ụ ế ậ ế ố
DTEa DCEa PSN DCEb DTEb (DTEa mu n ố
k t n i v i DTEb) ế ố ớ
DTEa nh n m t virtual circuit number (VCN)ậ ộ
DTEa g i gói callrequest cho DTEb (ch a VCN, đ a ch ở ứ ị ỉ
DTEa, đ a ch DTEb)ị ỉ
DCEa tìm đường đi băng qua m ng PSN cho gói này đ n ạ ế
DCEb
DCEb nh n m t VCN m i và g i gói incomingcall đ n ậ ộ ớ ở ế
DTEb (gói ch a VCN m i và các thông tin đ a ch ứ ớ ị ỉ
Trang 59X.25 – Th t c gi i phóng k t n i ủ ụ ả ế ố
DTEa DCEa PSN DCEb DTEb (DTEa mu n ố xóa k t n i v i DTEb) ế ố ớ
DTEa g i gói clearrequest t i DCEaở ớ
DCEa g i gói clearindication t i DTEb (thông qua DCEb)ở ớ
DTEb g i clearindication t i DTEa (thông qua các DCEb và ở ớDCEa)
Trang 60Virtual Call
Trang 61X.25 – Phân m nh (segmentation) ả
Xét tình hu ng các tr m A, B, C, D k t n i v i nhau A B C ố ạ ế ố ớ
D. Các lo i gói đạ ược đ nh nghĩa nh sauị ư
A – B: gói có kích th ướ c 1500 bytes
B – C: gói có kích th ướ c 1000 bytes
C – D: gói có kích th ướ c 1500 bytes
A mu n g i m t gói đ y đ đ n D, nó ph i g i các gói 1500 ố ở ộ ầ ủ ế ả ở
bytes đ n B. B ph i phân nh các gói này h n n a ế ả ỏ ơ ữ
Trang 62 Đi u khi n dòng và đi u khi n sai ề ể ề ể
Chu i các gói ỗ
Chu i đ y đ các gói ỗ ầ ủ
Cho phép kh i d li u l n đố ữ ệ ớ ược truy n qua m ng v i kích ề ạ ớ
thước gói nh h n mà không m t tính toàn v n c a kh i ỏ ơ ấ ẹ ủ ố
Trang 63Đ c thêm ọ
W. Stallings, Data and Computer Communications (6th edition), Prentice Hall 2003, chapter 10
X.25 info from ITUT web site
Routing information from Comer