- Kiểm soát dòng truyền được đảm bảo bằng cách trình bày cơ chế cho máy thu để điều chỉnh tốc độ dữ liệu của người gửi - Các chức năng của lớp RLC được thực hiện bởi RLC entities - Các t
Trang 1BÁO CÁO GIỮA KỲ MÔN: MẠNG TRUYỀN THÔNG DI ĐỘNG
1 CHỨC NĂNG CỦA LỚP RLC:
- Concatenation, Segmentation, Re-assembly of RLC SDUs: Phân đoạn và nối các SDU lớp trên thành RLC PDU cung cấp truyền dữ liệu đáng tin cậy và cho phép các gói để kích thước được chấp nhận bởi giao diện vô tuyến Mỗi RLC được cung cấp một số trình tự (SN) và PDU được lắp lại ở phía máy thu và chuyển sang các lớp trên Tất cả PDU và SDU được căn chỉnh byte, có nghĩa là đôi khi các đệm bit không được sử dụng lại được sử dụng ngoài việc thu tốc độ xử lý
Sinh viên thực hiện: Phạm Đình Quý
Nguyễn Thị Ngoan Nguyễn Hoàng Đức Nguyễn Mạnh Hùng Phạm Vũ Minh Đức Giảng viên hướng dẫn: Đinh Thị Thai Mai
Trang 2- SDU: Service data unit, PDU: packet data unit
- Re-segmentation: Việc sắp xếp lại diễn ra để lắp ráp các gói ngoài thứ tự từ HARQ MAC trong đường xuống và cung cấp giao PDUs theo chuỗi Điều này cho phép lớp RLC phân phối SDU theo chuỗi
- Error correction through ARQ: Sửa lỗi ARQ được thực hiện bằng các cơ chế bỏ phiếu, trình tự PDU SN và báo cáo trạng thái
- Protocol error detection and recovery, duplicate detection: Phát hiện lỗi giao thức và phục hồi, phát hiện trùng lặp cũng là các chức năng của lớp RLC, đảm bảo rằng các SDU chỉ được phân phối 1 lần cho các lớp trên
- in-sequence delivery: Truyền lại có thể được thực hiện để lấy lại tổn thất gói cho những người mang vô tuyến cần truyền tải không có lỗi Có một thực thể RLC trên mỗi người mang vô tuyến có chức năng đảm bảo quyền riêng tư
- Kiểm soát dòng truyền được đảm bảo bằng cách trình bày cơ chế cho máy thu để điều chỉnh tốc độ dữ liệu của người gửi
- Các chức năng của lớp RLC được thực hiện bởi RLC entities
- Các thực thể RLC được cấu hình tại eNodeB giao tiếp với thực thể RLC ngang hàng của
nó được cấu hình tại UE
1 RLC architecture
Trang 3Một RLC thực thể có thể được cấu hình ở một trong 3 chế độ :
- Chế độ trong suốt ( TM RLC entity)
- Chế độ không được xác nhận (UM RLC entity)
- Chế độ được xác nhận (AM RLC entity)
● Thực thể của TM Mode và UM Mode có thể được cấu hình là thực thể RLC truyền hoặc nhận còn thực thể của AM Mode có bộ truyền và bộ nhận riêng biệt
● Khi được cấu hình là thực thể truyền, nó nhận RLC SDU từ lớp trên (PDCP hoặc RRC layer) thông qua 1 SAP (Service Access Point) duy nhất và biến đổi SDU thành PDUs sau đó gửi PDUs tới qua các lớp thấp hơn (MAC and Physical Layer) thông qua các kênh logic tới thực thể RLC nhận ngang hàng của nó
● Khi nó được cấu hình là thực thể nhận, nó sẽ phân phát PDUs nhận được từ các lớp dưới (MAC and Physical Layer) cho các lớp trên (PDCP hoặc RRC layer)
● PDU có thể là PDU dữ liệu (mang thông tin người dùng) nhận được từ PDCP hoặc điều khiển( mang thông tin báo hiệu) nhận được từ RRC
● Mỗi thực thể RLC được phân loại là TM RLC hoặc AM RLC tùy thuộc vào chế độ truyền
dữ liệu
2 RLC modes
A TM mode ( transparent mode)
Hay còn gọi là chế độ trong suốt, nó chỉ giữ lại dữ liệu trong một khoảng thời gian nhất định hoặc cho đến khi dữ liệu đầu vào tiếp theo đến và sẽ loại bỏ dữ liệu cũ sau khung thời gian đó nếu dữ liệu cũ ấy không được truyền đi Chế độ này thường được sử dụng cho mục đích báo hiệu chung vì vậy nó sử dụng các kênh BCCH, PCCH và CCCH
Bộ đệm Buffer được dùng để đệm SDU giúp chúng truyền đi xa hơn
Dữ liệu đi qua mode này mà không có bất kì thay đổi nào:
o Tiêu đề không được thêm vào hoặc xóa khỏi dữ liệu đầu vào
o Phân đoạn dữ liệu đầu vào không được chia thành nhiều phân đoạn (SDU) ( hoặc nối với các SDU)
o Các phân đoạn dữ liệu không được kết hợp thành các đơn vị dữ liệu lớn
Quá trình truyền lại hoặc truyền theo trình tự sẽ không diễn ra trong TM mode, vì không có đường lên, các báo cáo trạng thái phản hồi không thể truyền truyền lại Các kích thước gói tin được chọn sao cho quá trình truyền đạt được với xác suất cao
Cấu hình TM sử dụng các kênh logic BCCH, CCCH và PCCH, để mở rộng dữ liệu cho người dùng
Trang 4B UM mode (Unacknowledged Mode)
Unacknowledged mode: Gọi như vậy vì bên thu sau khi nhận tín hiệu sẽ không phản hồi lại bên phát, kiểu cho gì nhận lấy RLC entities được cấu hình để truyền hoặc nhận PDU và SDU thông qua các kênh logic như DTCH/MCCH/MTCH
Trang 5Các hoạt động của phía máy phát:
i) Bộ đệm và sửa mã - giữ lại SDU nhận được từ lớp trên, bộ đệm truyền cho đến khi có được cơ hội truyền tải
ii) Phân đoạn - Phân đoạn một khối dữ liệu lớn thành nhiều khối dữ liệu nhỏ để phù hợp với kích thước SDU (PDU)
iii) Nối - Kết hợp nhiều khối dữ liệu nhỏ thành một khối dữ liệu lớn (PDU) có kích thước phù hợp để truyền cũng phụ thuộc vào kích thước SDU
iv) Thêm tiêu đề RLC giúp bên nhận chia lại hoặc kết hợp lại dữ liệu để truy xuất dữ liệu gốc (ví dụ phân 1 đoạn dài thành nhiều đoạn ngắn thì phải đánh dấu số thứ tự để đến bên
nhận ghép lại còn biết ghép cái gì với cái gì) Các PDU này sau đó được truyền vào lớp MAC
Các hoạt động của phía máy thu :
Khi bên nhận nhận được PDU,
i) Bộ đệm cà sửa mã HARQ: Phát hiện xem có bất kỳ PDU trùng lặp nào hay không, nếu
có thì loại bỏ PDU trùng lặp, sau đó sắp xếp lại PDU theo số thứ tự nếu PDU không được sắp xếp
ii) Xóa tiêu đề RLC -Trước khi nối lại dữ liệu, tiêu đề được thêm vào PDU trong khi truyền nên được xóa
iii) Tái định vị-các trường dữ liệu PDU được lắp ráp lại thành SDU và được chuyển sang các lớp trên của ngăn xếp giao thức, bất kỳ PDU nào không thể tập hợp được đều bị loại
bỏ
C AM mode ( Acknowledged mode)
Trang 6RLC entities được định cấu hình để truyền nhận SDU PDU thông qua các kênh logic DCCH
và DTCH
AM là chế độ phức tạp nhất của các chế độ RLC AM là viết tắt của “chế độ được xác nhận” có nghĩa là nó yêu cầu ACK/NACK (acknowledge / negative acknowledge) từ máy thu
Bên phát
Sơ đồ và hoạt đọng tương tự như UM Nhưng sự khác biệt nằm ở bộ đệm truyền lại (Retransmission butter) và RLC control trong đó, sau khi thêm tiêu đề, hai bản sao giống hệt của PDU được hình thành trong đó một bản được gửi đến lớp MAC, 1 bộ được gửi đến (Retransmission butter) Sau khi PDU được hình thành sau khi phân đoạn/nối nếu nó không phù hợp với độ dài của PDU RLC, nó sẽ được phân đoạn/nối lại, số lần thực hiện việc này là không giới hạn Tiếp nữa, nếu sau 1 khoảng thời gian bộ RLC control không
Trang 7nhận được phản hồi hoặc phản hồi NACK, PDU trong bộ (Retransmission butter) sẽ được truyền lại, nếu là ACK, PDU trong bộ (Retransmission butter) sẽ được xóa
Các hoạt động của bên nhận:
Hoạt động tương tự như UM Trong AM, cơ chế truyền lại dựa trên ARQ và được sử dụng để lấy lại bất kỳ PDUs bị thiếu nào Nếu bên gửi không nhận được ACK từ bên nhận,
nó sẽ tự động gửi lại cùng 1 dữ liệu và nếu bên gửi nhận được ACK trong khung thời gian đã được xác định trước, nó sẽ gửi dữ liệu tiếp theo
Cơ chế ARQ:
o Phía phát: yêu cầu thăm dò ý kiến
o Phía thu: báo cáo trạng thái ACK hoặc NACK
AM có thể thực một chức năng nữa là điều khiển luồng bằng cách thay đổi kích thước cửa sổ
Tóm tắt:
Hoạt động truyền:
i) Nhận Dữ liệu lớp cao hơn (SDU) từ PDCP hoặc RRC
ii) Đặt SDU vào Bộ đệm truyền
iii) Phân đoạn hoặc ghép SDU vào RLC PDU khi MAC cho phép truyền
iv) Thêm tiêu đề RLC vào RLC PDU
v) Tạo một bản sao của bộ đệm truyền để có thể truyền lại
vi) Gửi RLC PDU tới lớp tiếp theo (MAC)
Hoạt động nhận:
i) Lớp MAC chuyển RLC PDU nhận được tới lớp RLC
ii) Lớp RLC loại bỏ tiêu đề RLC khỏi PDU
iii) Nếu RLC PDU nhận được không có bất kỳ sự cố nào, hãy đánh dấu nó là ACK tích cực ( negative ACK) (nhưng việc ACK được gửi ngay bây giờ hay một thời gian sau hay bị bỏ qua được xác định bởi một số tham số RLC khác)
iv) Lớp RLC tập hợp các PDU thành SDU lớp trên
v) Chuyển các SDU đã được lắp ráp tới các lớp PDCP hoặc RRC
D Sự khác biệt giữa các Transfer Mode:
1 TM Transfer Mode:
Nó không thêm tiêu đề vào nội dung, không phân đoạn, không nối dữ liệu, tóm lại nó không tác động đến SDU mà chỉ chuyển các SDU có kích thước cố định xuống các lớp thấp hơn/cao hơn
Nó không thực hiện chức năng chính nào của lớp RLC (do vậy thường được gọi là NULL RLC) ngoại trừ Buffer data (giữ dữ liệu đầu vào trong bộ đệm của nó trong 1
Trang 8khoảng thời gian nhất định, sau khung thời gian đó nếu dữ liệu không được truyền, dữ liệu sẽ bị loại bỏ)
Được sử dụng cho các dịch vụ không đáng tin cậy (không yêu cầu truyền lại)
Nó được sử dụng nhiều trong các kênh báo hiệu chung (CCS) như BCCH PCCH CCCH
2 UM Transfer Mode:
Bên nhận thực hiện các chức năng RLC: phân đoạn, nối SDU, thêm các tiêu đề RLC (RLC header)
Bên nhận thực hiện các chức năng: sắp xếp lại các PDU, loại bỏ tiêu đề RLC, lắp ráp lại các trường PDU thành SDU
Được sử dụng cho các dịch vụ không đáng tin cậy (không yêu cầu truyền lại)
Thường được sử dụng cho các dịch vụ nhạy cảm về thời gian hoặc các ứng dụng thời gian thực Voice Over IP cái mà có thể có lỗi nhưng không thể trễ, nghĩa là nếu trong quá trình truyền, nếu xảy ra mất mát data thì có thể chấp nhận nhưng nếu
bị trễ thì không thể đc
AM Transfer Mode:
Được sử dụng cho các dịch vụ yêu cầu đồ tin cậy cao vì có chức năng sửa lỗi và truyền lại (dựa trên việc cho phép gửi trạng thái của PDU đến bên phát)
Cho phép phản hồi ACK/NACK
Cả bên truyền và thu đều cung cấp tất cả các chức năng RLC có sẵn như bên phát: nối (concatenation), phân đoạn (segmentation), thêm tiêu đề RLC, truyền lại (retransmission) và phân đoạn lại (re-segmentation) Bên thu:sắp xếp, loại bỏ tiêu
đề, khôi phục lại SDU, gửi trạng thái của PDU
Được ứng dụng trong trình duyệt, email, dịch vụ dữ liệu gói
Ưu tiên truyền PDU điều khiển hơn PDU dữ liệu, ưu tiên truyền lại các PDU dữ liệu hơn là truyền các PDU mới
4 RLC DATA STRUCTURE
1 Data structure in TM Mode:
Trang 9Chỉ chứa data, không có header nào được thêm vào
Hầu hết cấu trúc dữ liệu cho bất kỳ giao tiếp dữ liệu nào đều có tiêu đề riêng Gói IP có tiêu
đề IP Gói UDP có tiêu đề UDP Tiêu đề TCP có tiêu đề TCP Gói ICMP có tiêu đề ICMP, v.v Nhưng gói này không có bất kỳ tiêu đề nào Vai trò quan trọng nhất của header là mang các thông tin như sau: Ai là người gửi? (địa chỉ người gửi, id người gửi, v.v.); ai là người nhận (địa chỉ người nhận, id, v.v.), kích thước của dữ liệu là bao nhiêu?
Nhưng cấu trúc dữ liệu này không có thông tin nào trong số này Điều đó có nghĩa là gói TMD không thêm bất kỳ (tiêu đề) bổ sung nào vào dữ liệu đầu vào và không phân tách hoặc kết hợp dữ liệu đi vào thực thể RLC
Sau đó, kích thước của TMD PDU này được xác định như thế nào? Nó tự động được đặt có cùng kích thước với kích thước MAC PDU
Nếu dữ liệu đến lớn hơn kích thước RLC PDU thì sao? Nó chỉ lấy phần dữ liệu ban đầu có thể vừa với kích thước của nó và loại bỏ phần dữ liệu còn lại
Nếu dữ liệu đến nhỏ hơn kích thước RLC PDU thì sao? Nó chỉ lấy toàn bộ dữ liệu và chuyển
nó đến lớp MAC và lớp MAC thêm dữ liệu đệm vào cuối
2 Data structure in UM Mode:
Thực thể RLC UM có khả năng phân đoạn/ghép nối Điều đó có nghĩa là nếu dữ liệu đến lớn hơn kích thước RLC, nó sẽ phân đoạn dữ liệu thành nhiều phần và chuyển từng phần một Trong trường hợp này, bạn phải đặt một số thẻ (số) cho mỗi khối, nếu không, bên nhận không thể kết hợp chúng theo trình tự thích hợp Thẻ (số) này là SN (Số thứ tự)
Trang 10Điều gì xảy ra nếu nhiều gói dữ liệu có kích thước nhỏ đang đến với thực thể RLC? Cách đơn giản nhất là đóng gói đoạn nhỏ như hiện tại (như trong chế độ TM), nhưng nó rất lãng phí dung lượng
Vậy thì chúng tôi phải làm gì trong trường hợp này? Cách đơn giản nhất là đặt nhiều đoạn nhỏ vào một gói RLC duy nhất Trong trường hợp này, bạn cần thông tin đặc biệt cho từng đoạn nhỏ trong gói RLC, ngoại trừ đoạn cuối cùng LI (Chỉ báo độ dài) là giá trị độ dài cho mỗi phần nhỏ trong RLC PDU, ngoại trừ phần cuối cùng Ví dụ: nếu bạn có 5 khối trong một gói RLC, bạn sẽ có 4 trường E và 4 trường LI vì bạn không cần trường E và LI cho trường cuối cùng (trường hợp thứ 5 trong trường hợp này)
Trang 11Trường E : Trường này cho biết trường này là phần cuối của tiêu đề hay có còn phần mở rộng khác theo sau hay không
Trang 12Trường FI : Trường này cho biết vị trí tương đối của RLC PDU trong một RLC SDU Ví dụ: '01' cho biết PDU là phân đoạn đầu tiên của SDU và '10' cho biết PDU là phân đoạn cuối cùng của SDU và '11' cho biết PDU nằm giữa phân đoạn đầu tiên và cuối cùng Trong một SDU, chỉ có một PDU loại '01' và một PDU loại '10' Có thể có một hoặc nhiều PDU loại '11' Nếu FI là 00,
có nghĩa là RLC PDU giống như RLC SDU Khi RLC nhận loại '01', lớp bắt đầu đệm PDU trong
bộ nhớ RLC và chỉ khi nó nhận PDU '10', RLC sẽ tập hợp lại tất cả PDU đã nhận và chuyển nó sang PDCP
Làm cách nào để xác định loại UMD PDU?
Trong phần này, bạn có thể nhận thấy rằng có nhiều loại tiêu đề khác nhau trong UMD, nhưng nếu bạn xem qua các cấu hình RRC cho RLC UM, sẽ không có nhiều tham số để xác định loại tiêu đề Trên thực tế, chỉ có một tham số (sn-FieldLength) liên quan đến loại tiêu
đề UMD Điều này là không đủ để xác định loại tiêu đề UMD chính xác Ví dụ: nếu chúng tôi giả sử rằng sn-FieldLength là 5 bit, thì có thể có ba loại tiêu đề UMD như được hiển thị bên dưới
Trường hợp 1 : 36.322 Hình 6.2.1.3-1: UMD PDU với SN 5 bit (Không có LI)
Trường hợp 2 : 36.322 Hình 6.2.1.3-3: UMD PDU với SN 5 bit (Số Lẻ của LI, tức là K = 1, 3, 5,…)
Trường hợp 3 : 36.322 Hình 6.2.1.3-4: UMD PDU với SN 5 bit (Số LI chẵn, tức là K = 2, 4, 6,…)
Sau đó, bạn có thể hỏi làm thế nào bên nhận RLC có thể tìm ra tiêu đề nào Câu trả lời nằm trong trường 'E' Trường 'E' trong Octet đầu tiên và trường 'E' trong các byte tiếp theo (Oct
>= 2) Trường 'E' trong octet đầu tiên xác định tiêu đề phải là 'Trường hợp 1' hoặc 'Trường hợp 2,3' và trường 'E' trong octet sau (cụ thể hơn là giá trị K) xác định loại tiêu đề là Trường
Trang 13hợp 2 hay Trường hợp 3 Nếu K là 'số lẻ, tiêu đề Trường hợp 2 được sử dụng Nếu K là số chẵn, tiêu đề Trường hợp 3 được sử dụng
3 Data structure in AM Mode:
Trang 14Cấu trúc tổng thể khá giống với cấu trúc UMD ngoại trừ việc nó có thêm một vài trường D/C,
RF, P
Trường D/C: Trường này cho biết liệu PDU dành cho điều khiển RLC hay Dữ liệu
Trường RF : Trường này cho biết kiểu của AMD PDU
Trang 15Trường P : Trường này cho biết PDU có yêu cầu báo cáo trạng thái (RLC ACK hoặc NACK) từ bên kia hay không
Trường FI và trường E: giống với UMD