Khi bắt đầu một kết nối, nguồn tạo giá trị tốc độ truyền ban đầu Sinitial,Savailable là tốc độ truyền khả năng của mạng. Việc lựa chọn giá trị Sinitial rất quan trọng, vì nếu Sinitial>>SAvailable, kết nối gây ra tắc nghẽn mạng, nếu Sinitial << SAvailable, tài nguyên không được tận dụng hiệu quả trong một khoảng thời gian tương ứng tới độ trễ của băng thông.
Để giám sát độ trễ lớn và thiết lập giá trị tốc độ truyền hợp lý, RCSaM sử dụng thuật toán Initial thích hợp. RCSaM bắt đầu một kết nối mới ở trạng thái Initial và hoạt động trong khoảng thời gian tInitial =2 * SRTT. Mục đích của trạng thái Initial là thiết lập tốc độ truyền ban đầu không gây ra tắc nghẽn. RCSaM duy trì một giá trị SRTT (có nhiều phương pháp khác nhau để tính toán SRTT).
Trong giai đoạn Initial, nguồn RCSaM thực hiện hàm Initial (). + t là thời gian hiện tại của hệ thống.
+ t0 là thời gian ban đầu.
+ Giai đoạn Initial kéo dài hai lần SRTT, thuật toán Initial() sẽ kết thúc vào thời gian tEND = t0 + 2 * SRTT (1)
+ Stargetlà tốc độ truyền dữ liệu cần thiết khi truyền thời gian thực với chất lượng tốt
nhất.
Steady
Detected
Initial Backoff
after 2*SRTT Signal loss resolved
Signal loss not resolved (timeout) Packet loss
detection
No signal loss
Hình 3.4.2: Thuật toán Initial t0 = t; t1 = t0 + SRTT;
tEND = t + 2 * SRTT; IPGDummy = 1/STarget; tnex_ dummy =t0 + IPGDummy;
nACK = 0; t, STarget, SRTT t ≤ tEND t ≤t1 t < tnext_dummy DUMMY_ACK_ARRIVAL nACK = nACK + 1 send(DUMMY_PACKET); tnext_dummy = tnext_dummy + IPGDummy;
wdsn = a1; S = max(1, nACK)/SRTT; state=Steady; DUMMY_ACK_ARRIVAL nACK = nACK + 1 + a Kết thúc a a a a + + + +
+ Trong khoảng thời gian t0 ≤ t ≤ (t1 = t0 + SRTT), RCSaM gửi gói dummy send(DUMMY_PACKET) với tốc độ Starget, thời gian truyền là IPGDummy
=1/STarget. RCSaM dùng giá trị tnext dummy để báo thời gian gửi gói dummy tiếp
theo. Sau mỗi lần truyền gói dummy, tnext dummy được cập nhật.
+ RCSaM đếm số gói ACK của những gói dummy nACK. Mỗi lần nó nhận một gói ACK của gói dummy (DUMMY_PACKET_ARRIVAL), thì nACK tăng lên 1 giá trị, nACK dùng để đánh giá những tài nguyên mạng sẵn có:
nACK / SRTT ≈ min {STarget , SAvailable} (2)
+ trước khi kết thúc trạng thái Initial, RCSaM tạo giá trị wdsn = !1 và tốc độ truyền dữ liệu S =max {1, nACK} / SRTT (3). RCSaM sử dụng biến wdsn để duy trì TCPafriendly.