Thuật toán ỉ: Thuật toán cấp phát tốc độ
Thuật toán cấp phát tốc độ chạy mỗi khi một kết nối mới được thiết lập, hoặc khi kết nối ngừng gửi, hoặc sau khi hết khoảng thời gian cập nhật (tham sổ' có thể điểu chỉnh được) [6].
Trước tiên, các kết nối được cấp tốc độ bằng nhau (B/N). Khi kết nối được phát hiện không tận dụng hết sự cấp phát của nó (kết nối cổ chai), phần cấp phát dư thừa sẽ được chuvển cho các kết nối luôn luôn sử dụng hết tốc độ được cấp phát cho chúng (các kết nối đói). Bước này được lặp lại đến khi nào không còn băng thông dư nào để cấp phát, hoặc tất cà các kết nối đều là cổ chaị Phương pháp này gọi là “ dùng nó hoặc mất nó” .
1. Đôi với mỗi kết nối i, gọi R, là tốc độ đo được, A, là tốc độ được cấp phát.
2. Nếu N là số lượng các kết nối và B là dung lượng cổ chai, giá trị cấp phát ban đầu cho kết nối i là
3. Nêu R,<pA, đối với tỷ lệ phần trăm thích hợp p (biến được chọn tĩnh), thì đánh dấu i là kết nối “ cổ chai” , trái lại đánh dấu nó là “ đói”
4. Gọi Ư là gộp chung các phần băng thông dư, là phần băng thông không dùng bởi các kết nối cổ chaị
5. Phân bố băng thông này cho tất cả các kết nối đóị Nếu H là tổng số kết nối đói, sự cấp phát mới cho kết nối đói j được tính bởi:
A , = A I + V
' 1 H
6. Đối với mỏi kết nối cổ chai k, sự cấp phát mới sẽ là
71
3.3.2 Thuật toán ép buộc tốc dộ
Thuật toán 2: Thuật toán ép buộc tốc độ
Thuật toán này ép buộc tốc độ cấp phát được tính trong thuật toán trước bằng cách chuyên đổi tốc độ đó thành cửa sổ. Ngoài ra, nó đặt khoảng trống giữa các ack sao cho chúng phân bố trong khoảng thời gian RTT để không gập phải timeout [6],
1. Với mỗi kết nối i, ta đật:
w, = kích thước cửa sổ với đơn vị là góị Thav đổi sau mỏi khoảng thời gian cập nhật = khoảng cách tính bằng giây giữa các ack. Thay đổi sau mỗi khoảng thời gian cập nhật
RTT, = thời gian trễ vòng của kết nối i tính bằng giây (bỏ qua thời gian trễ hàng đợi). Được ước lượng tinh.
MSS, = kích gói số liệu lớn nhất cùa kết nối i tính bằng byte/góị Ước lượng tĩnh. A, = tốc độ cấp phát bằng byte/giâỵ Thay đổi sau mỗi khoảng thời gian cập nhật. 2. Do đó đôi với mỗi kết nối i ta có
VI ', X MSS, = A ì X RTT,
A x R T T W. = --- — ---
MSS,
3. Khoảng cách tính bằng giây giữa các ack:
RTT MSSi
4. Cho mỗi kết nối i, ack (nếu có) được ghi giờ kết thúc của với trường cửa sổ nhận được đặt bằng Wj.
5. Trường cửa sổ nhận trong ack của kết nối i được đặt bằng
6. Trường sỏ ack trong phần tiêu dé được xác định dựa vào 2 biến (sỏ thứ tự max và m in) thường biểu hiện hàng đợi ack. Trong trường hợp thông thường, sô ack nên được chọn đế xử lý bằng một MSS,.
M ỗ i khi lốc độ r được tính xong, nó được chuyên đổi thành giá trị cửa sổ theo công thức sau:
W = r x T
Chú ý ràng T là thời gian trễ vòng RTT, của kết nối i, không bao gồm trễ hàng đợị Cách chọn T là một số cô định cho tất cả các kết nối có thể dẫn tới sự khône công bằng. Giá trị w của cửa sổ được dùng để giới hạn biến cửa sổ tắc nghẽn TCP. Sự phản hổi được dựa vào trường cửa sổ nhận (W r) trong phần tiêu đẻ TCP :
Wrn„.=Min(WrolJ,W)
Chú ý rằng giá trị lựa chọn cửa sô(có được bằng cách dò hỏi trong các gói thiết lập kết nôi) được sử dụna, router cần phái được nhận thức được hệ số tỷ lệ, và cần phải điều chinh phàn hổi cửa sò w (16 bit) một cách thích hợp (chẳng hạn dịch phải một số lượng bàng hệ số). Hơn nữa, TCP checksum được điều chỉnh như sau:
Delta=Wrnew-WrolJ
TCP_checksum=TCP _checksum+Delta
Sự thay đổi trong phần tiêu đề không ảnh hưởng tới giao thức TCP và kết quả là trong suốt, và không đòi hỏi chuẩn. Tuy nhiên, việc phải đọc và ghi vào phần tiêu để của TCP có nghĩa là IP không nên mã hoá. Hơn nữa, sự cần thiết phải đo thời gian trễ vòng RTT, của mỗi kết nối có nghĩa là giải pháp đó cho tất cả mạng (gần hộ thống cuối). RTT cùa một kết nối có thể được xấp xỉ bằng cách quan sát các gói, các ack, và ngược lạị Không có giao dịch nào được thêm vàọ
Điểu khiển tốc độ TCP chỉ dẫn tốc độ của ack trong một khoảng thời gian trễ vòng (thuật toán 1). V ì kích thước cửa sổ đã được cố định, tốc độ của TCP bị cưỡng chế bởi tốc độ của ack nhận được. Do đó điều khiển tốc độ ack nhìn chung ổn thoả trong quá trinh truyền.
M ột nguvên nhân khác cùa sự bất ổn xảy ra khi thay đổi tốc độ cấp phát, mà biểu hiôn
73
số của MSS,. Cừa sổ thay đổi ở cuối các khoảng thời gian cặp nhật có thể gây ra kết quả là sự xuất hiện đột ngột của các gói (nếu cửa sổ tăng) hoặc thời gian rỏi (nếu cửa sổ bị giảm). Bàng cách phân bố sự tăng cửa sổ theo cấp số nhân đúng lúc truyển ack, có thể làm ổn thoà các biến đổi đột ngột đó. Tương tự như vây giá trị một phần cứa sổ có thể gây ra lỗi đặc biệt khi kích thước trung bình của cửa sổ là nhỏ (v í dụ các cổ chai tốc độ thấp, sỏ' kết nối lớn).
M ột khía cạnh hay nữa của điều khiển tốc độ TCP là khi cửa sổ TCP là tổng của một loạt các gói (và tronẹ các hàng đợi) đang chuyển theo một hướng, và các ack (và trong hàng đợi) đang chuyển theo hướng ngược lại, hàng đợi ack lớn hơn có thể bị ngừng trao đổi cho hàng đợi gói nhỏ hơn. Hơn nữa, toàn bộ ack của mỗi kết nối có thể được duy trì bằne cách giữ 3 biến: Hai biến chỉ ra khoảng các số tuần tự được lưu (max và m in), còn biến kia chỉ ra MSS cùa kết nối (kích thước tối đa của đoạn).
Tốc độ được tính toán mỗi khi hết khoảng thời gian cập nhật. Điểu này gây ra một thay đổi trong bộ đốm giờ khoảng trống giữa các gói, nó xác định khi đã hết ack. Khi ack thực sự đã được gửi, trường cửa sổ nhân trong phần tiêu đề của nó được cập nhật. Trường sỏ lượng ack được xác định dựa vào biến sừ dụng để biểu thị hàng đợi ack.
KẾT LUẬN
Cơí chê điểu khiến lưu lượng và tránh tắc nghẽn là vấn để cốt lõi trong mạng thòng tin máíy tính. Cơ chế điều khiển lưu lượng và tránh tắc nghẽn hiệu quả giúp mang máy tínih hoạt động thòng suốt và sử dụng kênh truyền với hiệu suất cao nhất, đặc biệt là cácc kênh phái thuê với giá đắt.
Trcong luận vãn, tác giả đã mô tả một số chiến lược sử dụng trong điều khiển lưu lượng và tránh tắc nghẽn. Chiến lược điều khiển lưu lượng và tránh tắc nghẽn dựa trên thời giain timeout và cơ chế cửa sổ và chiến lược CUTE là chiến lược điều khiển chung. Trcong mạng không hướng kết nối, điều khiển lưu lượng và tránh tắc nghẽn nhàm đạt đưcợc tôi ưu tổng thể trong hệ thống phân tán với nhiều tài nguyên và nhiều người dùing: sự hiệu quả và sự công bằng trong cấp phát tài nguyên. Chiến lược đơn giản cho phtép mạng đạt được điểm vận hành tối ưu một cách tự động là sử dụng 1 bit đơn trong phiần tiêu đề lớp mạng.
Trcong mạng sử dụng phương thức truyền sô' liệu hướng kết nối, chúng ta cũng đã đánh giáí hiệu suất của tiếp cận hop-by-hop và end-to-end trong việc xử lý lỗ i hoảc mất góị Tiêî'p cận end-to-end đối với điểu khiển lỗi bằng hoặc tốt hơn tiếp cận hop-by-hop vì tromg cùng thời gian thì đòi hỏi tài nguyên ít hơn.
Cáic phương pháp điều khiển lưu lượng sử dụng cơ chế cửa sổ đã giúp tăng hiệu suất sử dụing các tài nguyên trên mạng như bộ đệm, tốc độ xử lý của các trạm trung gian, dung lưẹơng kênh truyền. Tuy nhiên những phương pháp điểu khiển dựa vào cơ chế cửa sổ trưcợt còn có một số hạn chế đó là khi thay đổi kích thước cửa sổ thì cần trao đổi một loạit các thõng tin làm tãng khả nãng tắc nghẽn trên mạng. Phương pháp sừ dụng cửa sổ trượt cũng đòi hỏi bộ đếm thời gian trễ để phát hiện gói bị mất. Nhưng thời gian trễ thurờng biến động làm cho việc thực hiện khó chính xác.
Đkều khiển lưu lượng dựa vào tốc độ khắc phục được các nhược điểm trên. Bằng cách xácc định tốc độ và điểu chỉnh tốc độ truyền, các cơ chế điều khiển dựa vào tốc độ duy trì hoạt động của mạng tại điểm làm việc tối ưu mà không sử dụng cơ chế cửa sổ trượt. Phiươnơ pháp điều khiển lưu lượng dựa vào tốc độ có những ưu điểm hơn các phương phíáp truyền ihống là hướng nghiên cứu có nhiều triển vọng.
PHỤ LỤC A: DANH MỤC NHỬNG T Ừ VIẾT TẤT
T ừ TiẻhẹAnh Tiếng Việt
A ck acknowledgment Gói do trạm đích gửi, xác nhận đã nhận chính xác một (hoặc một số) gói do trạm nguồn gửi đến.
c Converter Bộ tập trung
C lif f Điểm đạt thông lượng lớn nhất của mạng. Quá điểm này, mạng sẽ nhanh chóng rơi vào điểm sập: tắc nghẽn hoàn toàn.
CPU Central Processing U nit
Bộ xử lý trung tâm
C U TE Congestion control using timeouts at the end-to-end layer
Chiến lược điều khiển tắc nghẽn end-to-end trong tầng mạng dựa vào timeout và cơ chế cửa sổ
C W I Change windows
indication
Chỉ định thay đổi cửa sổ
d k a D igital network
architecture
Kiến trúc mạng thông tin số
End-to-end Điểm cuối tới điểm cuối
ES End system Hê thống cuối
FCFS First Come Fist Serve
Đến trước phục vụ trước
FIFO First In First Out Vào trước ra trước
Full-duplex Truyền song công: dữ liệu được truyền theo cả hai chiéu ở cùng môt thời điểm
go-back-N Giao thức truyền lại N gói khi gói nhận được bị mất hoăc hỏng
Hallf-duplex Bán song công: Dữ liệu được truyền theo cả hai chiều, nhưng tại một thời điểm thì chỉ truyén một chiều
H op-by-hop Giao thức truyền dưa vào các kết nối trên mang H O ST Trạm cuối : Trạm cuối thông minh hoặc khổng
thông minh IM P Interface Message
Processor
Trạm trung gian mà gói dữ liệu đi qua trong quá trình truyền từ tram nguồn đến tram đích
Knee Điểm hoạt độne ổn định cùa mạng. Công suất
của mang đat cưc đai tai điểm nàỵ
M /M /1 M /M /1 queue: M arkov process, exponential
distribution, 1 server
Hàng đợi dựa trên quá trình đến Poisson (M arkov), phân bố mũ, 1 máy phục vụ
M U X M ultiplexer/dem ulti p-lexer
Bộ dồn/tách kênh
NSAP Network layer
service Access Point
Điểm truy nhập dịch vụ của một lớp
ooc Out o f order packets catching
Thu nhận các gói đến sai thứ tự
PS Pipe size độ lớn dung lương đường truyền
Router Bộ định tuyến
R T T Round trip time Thời gian trễ toàn phần: bằng thời gian phát gói tin + thời gian lan truyền từ trạm nguồn đến trạm đích + thời gian lan truyền gói ack từ trạm đích đến tram nguồn R W I Reset windows indication Chỉ định đặt lại cửa sổ S N A Systems network architecture
Kiến trúc mạng 7 lớp sử dụng để kết nối các thiết bi của hãng IB M vào những năm 1970.
ss Switching system Hê thống chuyển mạch
T Terminal Thiết bi cuối
vc V itual Circuit Kênh ảo: Kết nối logic trên mạng, đường đi của gói dữ liệu từ trạm nguồn đến trạm đích thông qua mang
W A N W ide area network Mang diên rông
PHỤ LỤC B: DANH MỤC CÁC TÀI LIỆU T HAM KHẢO
[J]. Amit Bhargava, James F.Kurso, Don Towslev, Guy Vanleempiit
Performance Comparison o f Error Control Schems in High-Speed Computer C om m unication Networks, IEEE journal on selected areas in communication, vol. 6 , NO 9, December 1988.
[2J. Leonard Kleinrock
On F lo w Control in Computer Networks, Los Angeles, California, 1977.
[3], Mischa Schwartz and Samir Saad
A n alysis o f Congestion Control Techniques in Computer Communication Network, N o rth - Holland Publishing Company, 1979.
[4], Ruj Jain
A Timeout-Based Congestion Control Scheme for Windows Flow-Controlled N etw orks, IEEE journal on selected areas in communication, vol. SAC 4 NO 7, O ctober 1986.
[5], Raj Jain, K.K Ramakrishnan, Dah-Ming Chiu
Congestion Avoidance in Computer Networks with a Connectionless Network Layer, D ig ita l Equipment Corporation, June 1, 1997.
[6]. Shrikrishma Karandikar, Shivkuma Kalyanaraman, Prasad Bagal, Bob Packer
TCP Rate Control, CA, USA, 1997.
[7j. Warren Keith Toomey
A Rate-Based Congestion Control Framework for Connectionless Packet-Switched N etworks, University o f New South Wales Australian, December 1997.
[8] Turek N Saadawi, Mostafa H. Ammar, Ahmed El Hakeem
Fundamentals o f Telecommunication Networks, John W iley & Sons, inc - 1994. Pages 206-208