4.2.1 Tổng quan
Tập hợp thực thể giao thức dựa trên SNDCP bao gồm các giao thức mạng đợc dùng chung. Các gaio thức này sử dụng cùng thực thể SNDCP, thực thể này cho phép thực hiện ghép dữ liệu đến các nguồn khác nhau, sau đó gửi tiếp bằng cách sử dụng các dịch vụ do lớp LLC cung cấp, Nhận dạng điểm truy cập dịch vụ mạng NSAPI là chỉ dẫn tới bối cảnh của PDP sử dụng các dịch vụ do SNDCP cung cấp. Một PDP có thể có nhiều bối cảnh PDP và NSAPI. Tuy nhiên, PDP sẽ sử dụng các NSAPI đợc cấp phát một cách riêng rẽ. Mỗi NSAPI ở trạng thái tích cực sẽ sử dụng các dịch vụ đợc SAPI cung cấp trong lớp LLC. Nhiều NSAPI có thể liên kết với cùng một SAPI.
Hình 4.8. Ghép các giao thức khác nhau. 4.2.2. Các dịch vụ nguyên thuỷ SNDCP PDP PDP PDP LLC N-PDU SN-PDU NSAPI SAPI
- SN-DATA: Yêu cầu nguyên thuỷ đợc sử dụng bởi ngời sử dụng SNDCP cho phát xác nhận các N-PDU mà ở đó sự biểu thị nguyên thuỷ đợc sử dụng bởi SNDCP để phân phát N-PDU cho ngời sử dụng SNDCP tơng ứng. Lớp LLC xác nhận phát và nhận thành công.
- SN-UNITDATA: Yêu cầu nguyên thuỷ đợc sử dụng bởi ngời sử dụng SNDCP cho
phát không xác nhận các N-PDU. Sự vận chuyển nguyên thuỷ NSAPI này cho nhận dạng PDP sử dụng dịch vụ, ví dụ IP, X.25. Biểu thị nguyên thuỷ đợc sử dụng bởi thực thể SNDCP để phân phát N-PDU cho ngời sử dụng SNDCP.
- SN-XID : Yêu cầu nguyên thuỷ đợc sử dụng bởi ngời sử dụng SNDCP cho yêu cầu
khởi đầu thực thể để phân phát các thông số nhận diện thay đổi đợc yêu cầu (XID). Sự biểu thị nguyên thuỷ đợc sử dụng bởi thực thể SNDCP để phân phát các thông số XID cho ngời sử dụng SNDCP. Thêm nữa, đáp ứng nguyên thuỷ đợc sử dụng bởi ngời sử dụng SNDCP để phân phát các thông số XID đợc thoả thuận cho thực thể ngang hàng và cuối cùng, xác nhận nguyên thuỷ đợc sử dụng bởi thực thể SNDCP để phân phát các thông số XID đã thoả thuận cho ngời sử dụng SNDCP.
4.2.3 Các chức năng dịch vụ
SNDCP thực hiện các chức năng sau:
- ánh xạ các hàm nguyên thuỷ SN-DATA vào các hàm nguyên thuỷ LL-DATA.
- ánh xạ các hàm nguyên thuỷ SN-UNITDATA vào các hàm nguyên thuỷ LL- UNITDATA.
- Ghép các kênh N-PDU từ một hoặc nhiều thực thể lớp mạng vào kết nối LLC thích
hợp.
- Thiết lập, thiết lập lại và giải phóng hoạt động đẳng cấp có phúc đáp của LLC.
- Lu trữ tạm thời các N-PDU ở SNDCP cho các dịch vụ có phúc đáp.
- Quản lý việc phân phối theo thứ tự cho mỗi SAPI một cách độc lập.
- Nén các thông tin điều khiển giao thức d thừa tại thực thể nén và giải nén ở thực thể
thu. Phơng thức nén đặc trng cho các giao thức sử dụng ở lớp mạng hoặc lớp giao vận.
- Nén các thông tin dữ liệu ngời dùng d thừa tại thực thể phát và giải nén ở thực thể
thu. Quá trình nén đợc thực hiện độc lập cho mối SAPI và có thể thực hiện độc lập cho mỗi bối cảnh PDP. Các tham số nén đợc thoả thuận giữa MS và SGSN.
- Phân đoạn và lắp ghép lại: Sau khi các thông tin đợc nén thì đợc phân đoạn với
chiều dài cực đại LL-PDU. Các thủ tục này đợc thực hiện độc lập với giao thức lớp mạng đang sử dụng.
- Thoả thuận các tham số XID giữa các thực thể SNDCP đẳng cấp sử dụng quá trình
trao đổi XID.
- Thứ tự các chức năng ở phía phát:
+ Nén dữ liệu ngời dùng.
+ Phân đoạn các thông tin đã đợc nén vào các SN-DATA hoặc SN-UNITDATA.
- Thứ tự các chức năng ở phía thu:
+ Lắp ghép lại các SN-PDU. + Giải nén dữ liệu ngời dùng.
+ Giải nén thông tin điều khiển giao thức.
4.2.4 Các chức năng giao thức
4.2.4.1 Ghép kênh các N-PDU
Trờng NSAPI đợc sử dụng cho việc xác định một cạp kiểu PDP và địa chỉ PDP đặc thù. Cặp này đợc sử dụng cho các dịch vụ lớp do lớp SNDCP cung cấp. MS cấp phát động các NSAPI trong quá trình hoạt hoá bối cảnh PDP. Phân lớp SM phân phối NSAPI tới lớp SNDCP bằng hàm nguyên thuỷ SNSM-ACTIVE.indication. Trong quá trình truyền thực thể SNDCP sẽ thêm giá trị NSAPI vào trong mỗi N-PDU. Thực thể SNDCP đẳng cấp sử dụng NSAPI để xác định ngời dùng SNDCP mà N-PDU cần đợc chuyển tới.
Bảng 4.10. Ví dụ về cấp
phát NSAPI
4.2.4.2 Thiết lập và giải phóng hoạt động đẳng cấp có phúc đáp của LLC
Lớp SNDCP sử dụng cho quá trình thiết lập, thiết lập lại và giải phóng hoạt động đẳng cấp có phúc đáp của LLC. Quá trình thiết lập lại và giải phóng hoạt động đẳng cấp có phúc đáp của LLC cũng có thể khởi đầu tại lớp LLC. Việc thoả thuận tham số SNDCP XID có thể thực hiện cùng với thủ tục thiết lập hoặc thiết lập lại sử dụng hàm LL-XID.
Thiết lập lại: Lớp SNDCP có thể khởi đầu quá trình thiết lập lại cho một SAPI theo một điều kiện nào đó, ví dụ nh khi phát hiện lỗi ở thực thể nén dữ liệu V.42bis. Lớp LLC có thể khởi đầu quá trình thiết lập lại cho một SAPI. LLC thông báo cho NSDCP bằng hàm LL-ESTABLISH.indication.
Lớp SNDCP sẽ khởi đầu quá trình thiết lập và thiết lập lại bằng cách gửi hàm LL- ESTABLISH.indication tới lớp LLC SAP thích hợp. Các tham số SNDCP XID có thể có trong hàm này. Sau khi gửi LL-ESTABLISH.indication, lớp SNDCP sẽ hoãn việc truyền các hàm SN-DATA và SN-UNITDATA tới LLC SAP mà hàm LL-ESTABLISH.indication đợc truyền tới. Việc truyền các hàm SN-DATA và SN-UNITDATA sẽ đợc thực hiện tiếp khi thủ tục thiết lập kết thúc thông qua một trong các cách sau:
- Thành công: Nhận đợc hàm LL-ESTABLISH.confirm.
- Có lỗi: Nhận đợc hàm LL-RELEASE.indication.
PDP Type NSAPI đợc cấp phát Địa chỉ PDP
IP 12 133.12.75.111
Hình 4.11 Lớp LLC khởi đầu quá trình thiết lập lại.
- Thành công sau khi có sự phân tích xung đột (nhận đợc hàm LL- ESTABLISH.indication và gửi hàm LL- ESTABLISH.Response).
- Dựa trên cách thức hàm LL-ESTABLISH.indication, nếu có một khối SNDCP XID
trong hàm thì thực thể SNDCP đẳng cấp sẽ trả lời bằng một hàm LL- ESTABLISH.Response.
- Thủ tục giải phóng: Lớp SNDCP sẽ khởi đầu thủ tục giải phóng bằng cách gửi một
hàm LL- ESTABLISH.Response tới lớp LLC SAP thích hợp. Tham số Local đợc thiết lập nếu việc giải phóng là kết quả của quá trình thu nhận hàm SNSM- DEATIVE.indication còn nếu không phải hàm này thì tham số Local sẽ không đợc thiết lập.
Hình 4.12 Quá trình thiết lập, thiết lập lại do SNDCP khởi đầu
4.2.4.3 Lu trữ đệm các N-PDU
Các N-PDU đợc lu trữ đệm tại lớp SNDCP trớc khi đợc nén, phân đoạn và truyền dẫn tới lớp LLC. Quá trình thu nhận một hàm SNSM-DEACTIVE.indication khởi đầu việc xoá bộ đệm cho NSAPI có liên quan.
Đối với việc truyền dẫn có phúc đáp, một thực thể SNDCP sẽ lu trữ đệm một N-PDU cho tới khi truyền dẫn thành công tất cả các SN-PDU mang một phân đoạn của N-PDU và các SN-PDU đợc LLC xác nhận bằng hàm LL-DATA.confirm hoặc hàm SNSM-
Originator SNDCP user SNDCP LLC Receiver SNDCP user SNDCP LLC SABM UA LL-ESTAB ind LL-ESTAB ind Originator SNDCP user SNDCP LLC Receiver SNDCP user SNDCP LLC SABM UA LL-ESTAB ind LL-ESTAB ind LL-ESTAB res LL-ESTAB req
WINDOW.ind. Tại SGSN mỗi hàm LL-DATA.res đợc gửi tới LLC thì có hàm LL- DATASEND.ind trả lời lại cho SNDCP ngay khi mà số thứ tự do LLC gửi đến đợc gán cho LLC PDU. Hàm LL-DATASEND.ind chứa số thứ tự do LLC gửi đến. ở thực thể SNDCP, các N-PDU đợc lu trữ đệm đã đợc thu nhận đầy đủ và đợc phúc đáp bằng hàm LL-DATA.confirm thì bị huỷ bỏ. Còn trong truyền dẫn không phúc đáp thì SNDCP sẽ huỷ N-PDU ngay lập tức sau khi N-PDU này đợc truyền tới LLC.
4.2.4.4.Quản lý truyền dẫn
Lớp SNDCP sẽ giữ lại thứ tự truyền dẫn các N-PDU của mỗi NSAPI giữa các thực thể đẳng cấp. Thứ tự truyền dẫn các N-PDU từ các NSAPI có thể đợc thay đổi theo các mô tả QoS.
4.2.4.5 Nén thông tin điều khiển giao thức
Đặc tính nén thông tin điều khiển giao thức là một đặc tính tuỳ chọn của SNDCP. Việc thoả thuận các thuật toán đợc hỗ trợ và các thuật toán đợc thực hiện giữa MS và SGSN nhờ sử dụng tham số XID.
Mỗi thực thể SNDCP hỗ trợ nén thông tin điều khiển giao thức sẽ có thể thoả thuận một hoặc nhiều thực thể nén thông tin điều khiển giao thức với định dạng SNDCP XID. Quá trình thoả thuận đợc thực hiện nhờ sử dụng sự thoả thuận về tham số cho mỗi thực thể XID. Thực thể khởi đầu định nghĩa một tập hợp các thực thể nén đợc yêu cầu cùng thuật toán và tham số cho mỗi thực thể nén. Tập hợp các thực thể và các tham số, thuật toán của chúng đợc đa tới thực thể đẳng cấp. Thực thể đẳng cấp trả lời bằng một tập hợp các thực thể đã thoả thuận cùng tham số và thuật toán của chúng. Thực thể đẳng cấp sẽ lựa chọn các giá trị tham số đã đề nghị hoặc các giá trị thiết lập cho các thực thể đã thoả thuận.
4.2.4.6 Nén dữ liệu
Nén dữ liệu là đặc tính tuỳ chọn của SNDCP. Đợc sử dụng cho cả hai loại hàm nguyên thuỷ SN-DATA và SN-UNITDATA.
Nếu sử dụng nén dữ liệu thì sẽ thực hiện trên N-PDU cha phân đoạn bao gồm cả thông tin điều khiển giao thức có thể đã đợc nén.
Nhiều NSAPI có thể sử dụng cùng một thực thể nén dữ liệu chung nghĩa là cùng thuật toán nén và cùng bảng mã. Các thực thể nén dữ liệu riêng biệt đợc sử dụng cho trao đổi dữ liệu có phúc đáp (SN-DATA) và dữ liệu không có phúc đáp (SN- UNITDATA).Nhiều NSAPI có thể cùng đợc liên kết với một SAPI nghĩa là chúng cùng một mô tả QoS.
Mỗi thực thể SNDCP hỗ trợ nén dữ liệu có khả năng thoả thuận một hoặc nhiều thực thể nén dữ liệu với định dạng SNDCP XID. Qua trình thoả thuận sẽ đợc thực hiện nhờ tham số XID.
Octet 2 Length =n-2 Octet 3 High-order octet
.... ....
Octet n Low-order octet
Bảng 4.13. Định dạng trờng nén dữ liệu cho quá trình thoả thuận SNDCP XID
Bit X: bit dự trữ, đợc đặt bằng “1”. Nếu SN-PDU thu đợc bit này có giá trị bằng “1”thì sẽ bỏ qua trờng này không báo lỗi.
4.2.4.7 Phân đoạn và lắp ghép lại
Quá trình phân đoạn do thực thể SNDCP thực hiện để đảm bảo bất kỳ SN-PDU đợc truyền có độ dài không lớn hơn N201 (tham số lớp LLC xác định số lợng cung cấp cực đại các octet trong trờng dữ liệu). Thực thể SNDCP phía thu sẽ lắp ghép lại các segment theo đúng N-PDU gốc (NPDU này có thể đợc nén).
Thủ tục phân đoạn và lắp ghép có sự khác nhau giữa hai chế độ có phúc đáp và không phúc đáp.
a. Phân đoạn
Một PDU (có thể đợc nén) sẽ đợc phân đoạn thành một hoặc nhiều SN-PDU. Chiều dài mỗi SN-PDU không vợt quá N201I (chế độ phúc đáp) và N201U (chế độ không phúc đáp).
Bit F trong SNDCP header đợc đặt bằng “1” trong segment đầu tiên và bằng “0” trong các segment tiếp theo. Trong hoạt động đẳng cấp không có phúc đáp của LLC, SNDCP header có các trờng PCOM và DCOM nếu bit F bằng “1”và không nếu bit F bằng “0”. Trong hoạt động đẳng cấp có phúc đáp của LLC, SNDCP header có các trờng PCOM và DCOM nếu bit F bằng “0”và không nếu bit F bằng “1”.
Bit M trong SNDCP header đặt bằng “0” cho segment cuối cùng và bằng “1” cho các segment trớc đó. Nếu chỉ có SN-PDU đợc tạo ra từ một N-PDU thì bit F bằng “1”và bit M bằng “0”.
b. Lắp ghép lại các SN-PDU
Trong quá trình lắp ghép, giá trị PCOM và DCOM của một N-PDU đợc lấy từ segment đầu tiên (F=”1”). Trong hoạt động đẳng cấp có phúc đáp của LLC chỉ số N-PDU đợc lấy ra từ segment đầu tiên.
Thực thể SNDCP phía thu ở một trong ba trạng thái thu nhận sau:
- Trạng thái thu segment: Trong đó thực thể SNDCP chờ bit F đợc thiết lập bằng “1”
trong SN-PDU tiếp theo.
- Trạng thái thu segment tiếp theo: Trong đó thực thể chờ bit F đợc thiết lập bằng
“0” trong SN-PDU tiếp theo.
- Trạng thái huỷ bỏ: Thực thể SNDCP huỷ bỏ SN-PDU thu đợc.
d. P hân đoạn và lắp ghép lại trong chế độ không phúc đáp
Chỉ số segment đợc sử dụng bởi tính chất không tin cậy của chế độ không phúc đáp. Chỉ số segment là một số thứ tự đợc gán cho mỗi SN-UNITDATA.PDU. Số thứ tự đặt bằng “0” cho SN-UNITDATA.PDU của một N-PDU và tăng lên 1 cho SN- UNITDATA.PDU tiếp theo. Trong chế độ này sử dụng bộ đếm 16.
Các Segment thu đợc thuộc về cùng N-PDU sẽ đợc sắp xếp lại nếu cần thiết. Nếu đồng hồ (tuỳ theo cách thực hiện) đạt tới thời điểm xác định trớc khi thu đợc các segment thì chúng sẽ bị huỷ bỏ.
4.2.4.8 Thoả thuận các tham số XID
Quá trình thoả thuận các tham số giữa các thực thể SNDCP đẳng cấp có thể thực hiện để đảm bảo truyền thông tin một cách tối u. Các tham số gọi là tham số định danh trao đổi SNDCP (SNDCP XID).
Thoả thuận các tham số có thể do thực thể SNDCP tại MS hặc SGSN khởi đầu. Nếu các tham số SNDCP XID bị thay đổi , quá trình thoả thuận sẽ đợc khởi đầu trớc khi trao đổi dữ liệu. MS sẽ khởi đầu quá trình thoả thuận SNDCP XID dựa trên hàm SNSM- ACTIVE.ind. SGSN sẽ khởi đầu dựa trên hàm SGSN-MODIFY.ind nếu một NSAPI đợc tạo ra hoặc nếu thay đổi trong mô tả QoS cho một NSAPI hiện tại.
Cả hai lớp SNDCP và LLC đều có khả năng khởi đầu quá trình thoả thuận XID.
Hình 4.14Thủ tục thoả thuận SNDCP XID.
4.2.4.9 Trao đổi dữ liệu
a.Trao đổi dữ liệu có phúc đáp
Thực thể SNDCP sẽ khởi đầu quá trình truyền dữ liệu có phúc đáp chỉ khi bối cảnh PDP cho NSAPI (đợc xác định trong bản tin SN-DATA.res) đợc hoạt hoá và hoạt động có phúc đáp lớp LLC đã đợc thiết lập.
Chỉ số N-PDU trong chế đọ có phúc đáp là một số đợc gan cho mỗi N-PDU mà SNDCP nhận đợc qua hàm SN-DATA.res. Các chỉ số N-PDU cho các NSAPI khác nhau đợc gán độc lập. Tiêu đề SNDCP của segment đầu tiên chứa chỉ số N-PDU.
Có hai biến là Send N-PDU và Receive N-PDU sẽ đợc sử dụng cho mói NSAPI trong hoạt động đẳng cấp có phúc đáp lớp LLC. Khi một NSAPI đợc hoạt hoá, khi chế độ hoạt
Originator SNDCP user SNDCP LLC Receiver SNDCP user SNDCP LLC XID XID LL-XID.res LL-XID.req SN-XID.req SN-XID.ind SN-XID.ind SN-XID.res SN-XID.cnf LL-XID.cnf
động đẳng cấp LLC thay đổi từ không phúc đáp sang có phúc đáp dựa trên hàm SNSM- MODIFY.ind hoặc khi nhận hàm LL-RESET.ind lúc đó hai biến này đợc thiết lập bằng 0. Hai biến này có giá trị từ 0-255.
Hình 4.15. Trao đổi dữ liệucó phúc đáp SNDCP.
Dựa trên hoạt động của hàm SN-DATA.res, thực thể SNDCP sẽ gán giá trị hiện tại cảu chỉ số Send N-PDU cho chỉ số N-PDU của N-PDU thu đợc, tăng chỉ số của Send N- PDU lên 1, thực thể nén, phân đoạn tiếp đó gửi SN-PDU trong hàm LL-DATA.res. Các N- PDU đợc lu trong bộ đệm tại thực thể SNDCP. Các N-PDU này bị xoá bỏ khi SN-DATA PDU chuyển segment cuối cùng của N-PDU và segment này đợc xác nhận bằng hàm LL-