1. Giao thức truyền tải thời gian thực - RTP
1.1 Khỏi quỏt
RTP đƣợc coi nhƣ một giao thức truyền từ đầu cuối đến đầu cuối (end to end) phục vụ cỏc dữ liệu thời gian thực nhƣ audio và video. RTP thực hiện việc quản lý về thời gian truyền, quản lý số hiệu tuần tự, kiểm tra truyền dữ liệu và nhận dạng kiểu dữ liệu đƣợc truyền. Nhƣng RTP khụng cung cấp bất cứ một cơ chế nào bảo đảm thời gian truyền và cũng khụng cung cấp bất cứ một cơ chế nào giỏm sỏt chất lƣợng dịch vụ. Sự giỏm sỏt và bảo đảm về thời gian truyền dẫn cũng nhƣ chất lƣợng dịch vụ đƣợc thực hiện nhờ hai giao thức là RTCP và RSVP. [7]
Tƣơng tự nhƣ cỏc giao thức truyền dẫn khỏc, gúi tin RTP (RTP packet) bao gồm hai phần là phần mào đầu (header) và phần dữ liệu (data). Nhƣng khụng giống nhƣ cỏc giao thức truyền dẫn khỏc là sử dụng cỏc trƣờng trong header để thực hiện cỏc chức năng điều khiển, RTP sử dụng một cơ chế điều khiển độc lập trong định dạng của gúi tin RTCP để thực hiện cỏc chức năng này.[7]
1.2 Cấu trỳc gúi tin RTP
Hỡnh 13: Cấu trỳc gúi tin RTP
Ver (Version - 2bit): chỉ rừ version của RTP hiện tại đang đƣợc cài đặt. Hiện tại cỏc giao thức RTP đƣợc cài đặt là version2
Vựng đệm P (Padding - 1bit): cú vai trũ nhƣ bit cờ đƣợc sử dụng để đỏnh dấu khi cú một số byte đƣợc chốn thờm vào trong gúi. Bit này đƣợc thiết kế để thớch nghi với việc sử dụng của cỏc thuật toỏn mó hoỏ mà yờu cầu cỏc khối cú độ dài cố định và việc truyền những gúi tin RTP ở cỏc lớp giao thức thấp hơn.
Mở rộng X (Extension - 1bit): cũng cú vai trũ nhƣ một bit cờ đƣợc sử dụng để đỏnh dấu khi cú header mở rộng tiếp theo header cố định. Header mở rộng cung cấp cỏc cơ chế cho phộp những ngƣời phỏt triển thử nghiệm bằng cỏch thờm cỏc chức năng định dạng dữ liệu độc lập mà yờu cầu cỏc thụng tin trong header thờm khi cho phộp một hoạt động bổ sung bỏ qua phần mở rộng
Đếm CSRS CC (CSRC count - 4bit): chỉ rừ số lƣợng của CSRC (contributing source) cú trong RTP header.
Đỏnh dấu M (Marker - 1bit): cú vai trũ nhƣ một bit cờ, trạng thỏi của nú đƣợc phụ thuộc vào trƣờng payload type. Khi bit này đƣợc thiết lập nú sẽ chỉ ra rằng trƣờng payload type cú mang những thụng tin chi tiết đƣợc định nghĩa phự hợp với cỏc ứng dụng mà những thụng tin này khụng đƣợc định nghĩa trong cỏc chỉ dẫn của giao thức RTP
Kiểu tải trọng PT (Payload type - 7bit): chỉ rừ loại thụng tin đƣợc chức trong cỏc gúi.
Số thứ tự (Sequence number - 16bit): cung cấp số thứ tự của cỏc gúi. Cỏch này nhƣ một cơ chế giỳp bờn thu cú thể thu đỳng thứ tự cỏc gúi tin, nhận ra cỏc gúi tin bị mất. Cỏc gúi tin bị mất sẽ khụng đƣợc truyền lại chỳng sẽ đƣợc phớa thu xử lý bằng cỏch sử dụng một thuật toỏn để tỏi tạo lại cỏc gúi tin bị mất. Giỏ trị khởi đầu
của trƣờng sequence number là ngẫu nhiện để đảm bảo tớnh an toàn và bảo mật thụng tin.[7]
Nhón thời gian (Time-stamp - 32bit): là tham số đỏnh dấu thời điểm byte đầu tiờn đƣợc lấy mẫu trong gúi RTP. Giỏ trị nhón thời gian khởi đầu là ngẫu nhiờn, cỏc gúi RTP phỏt đi liờn tiếp cú thể cú cựng giỏ trị nhón thời gian nếu chỳng cựng đƣợc phỏt đi một lỳc. Vớ dụ với một bức ảnh số, chỳng thƣờng đƣợc cắt ra làm nhiều phần và mỗi phần đƣợc chứa trong một gúi. Những gúi đú khỏc nhau về thứ tự (sequence number) nhƣng chỳng cựng cú một giỏ trị nhón thời gian.[7]
Số nhận dạng nguồn dữ liệu (Synchronisation source identifier - SSRC): số nhận dạng nguồn của gúi dữ liệu. Nếu ứng dụng muốn truyền dữ liệu cú nhiều dạng khỏc nhau trong cựng một thời điểm (vớ dụ là tớn hiệu audio và video) thỡ sẽ cú những phiờn truyền riờng cho mỗi dạng dữ liệu. Sau đú ứng dụng sẽ tập hợp cỏc gúi tin cú cựng số nhận dạng SSRC. Số nhận dạng này đƣợc gỏn một cỏch ngẫu nhiờn.
Số nhận dạng nguồn tập hợp (Contribute source (CSRC) identifier): độ dài thay đổi, vớ dụ tại một điểm đớch nào đú mà những tớn hiệu audio đến đớch cần trộn lại với nhau thỡ giỏ trị CSRC sẽ là tập hợp tất cả cỏc giỏ trị SSRC của cỏc nguồn mà gửi tớn hiệu đến điểm đớch đú. Trƣờng CSRC cú thể chứa tối đa là 15 số nhận dạng nguồn SSRC.
Mào đầu mở rộng (Extension header): độ dài thay đổi, chứa cỏc thụng tin thờm của gúi RTP
2. Giao thức điều khiển truyền tải thời gian thực - RTCP
2.1 Khỏi quỏt
Mặc dự RTP là một giao thức độc lập nhƣng thƣờng đƣợc hỗ trợ bởi giao thức RTCP. RTCP trả về nguồn cỏc thụng tin về sự truyền thụng và cỏc thành phần đớch. Giao thức điều khiển này cho phộp gửi về cỏc thụng số về bờn thu và tự thớch nghi với bờn phỏt vớ dụ nhƣ tự thớch nghi kiểu nộn tớn hiệu và từ điều chỉnh lƣu lƣợng dữ liệu cho phự hợp với bờn phỏt. Mỗi ngƣời tham gia một phiờn truyền RTP phải gửi định kỳ cỏc gúi RTCP tới tất cả những ngƣời khỏc cũng tham gia phiờn truyền. Tuỳ theo mục đớch RTCP thực hiện 4 chức năng:
- Chức năng chớnh của RTCP là cung cấp một sự phản hồi về chất lƣợng của dữ liệu. Cỏc thụng tin đú giỳp cho ứng dụng thực hiện chức năng điều khiển luồng và quản lý tắc nghẽn. Cỏc thụng tin cũn đƣợc sử dụng để chẩn đoỏn kết quả.
- RTCP cung cấp sự nhận dạng mà đƣợc sử dụng để tập hợp cỏc kiểu dữ liệu khỏc nhau (vớ dụ audio và video). Điều này là cần thiết vỡ khả năng này khụng đƣợc RTP cung cấp.
- Nhờ việc định kỳ gửi cỏc gúi tin RTCP mà mỗi phiờn truyền cú thể theo dừi đƣợc số ngƣời tham gia. RTP khụng thể sử dụng đƣợc cho mục đớch này khi một ai đú khụng gửi dữ liệu mà chỉ nhận từ những ngƣời khỏc.
- Cuối cựng là một chức năng lựa chọn cho phộp cú thờm thụng tin về những ngƣời tham gia vào phiờn truyền.
Tuỳ thuộc vào giao thức RTP đƣợc sử dụng cho loại dữ liệu nào mà RTCP cung cấp cỏc thụng bỏo điều khiển khỏc nhau. Cú 4 loại thụng bỏo điều khiển chớnh đƣợc giao thức RTCP cung cấp là:
- Thụng bỏo ngƣời gửi (Sender report): thụng bỏo này chứa cỏc thụng tin thống kờ liờn quan đến kết quả truyền nhƣ tỷ lệ tổn hao, số gúi dữ liệu bị mất, khoảng trễ. Cỏc thụng bỏo này phỏt ra từ phớa phỏt trong một phiờn truyền thụng.
- Thụng bỏo ngƣời nhận (Receiver report): thụng bỏo này chứa cỏc thụng tin thống kờ liờn quan đến kết quả nhận giữa cỏc điểm cuối. Cỏc thụng bỏo này đƣợc phỏt ra từ phớa thu trong một phiờn truyền thụng.
- Thụng bỏo mụ tả nguồn (Source description): thụng bỏo bao gồm cỏc thụng số mụ tả nguồn nhƣ tờn, vị trớ...
- Thụng bỏo ứng dụng (Application): thụng bỏo cho phộp truyền cỏc dữ liệu của ỳng dụng
2.2 Cấu trỳc gúi tin RTCP:
Hỡnh 14: Cấu trỳc gúi tin RTCP
Ver (Version - 2bit): chỉ rừ version của giao thức RTP hiện đang cài đặt. Hiện tại cỏc giao thức RTP đang đƣợc sử dụng là version2.
Vựng đệm (Padding - 1bit): cú chức năng nhƣ một bit cờ chỉ rừ xem trong gúi cú cỏc byte đƣợc chốn thờm hay khụng.
Số thụng bỏo (Report counter - 5bit): chỉ rừ số thụng bỏo chứa trong gúi (mỗi nguồn cú một thụng bỏo)
VER P Số thụng bỏo Kiểu gúi Chiều dài gúi Nội dung thụng bỏo
Kiểu gúi (Packet type -8bit): xỏc định loại thụng bỏo của gúi (SR hoặc RR hoặc APP)
Chiều dài gúi (Length - 16bit): chỉ rừ độ đài của gúi.
Nội dung thụng bỏo (Report): độ dài thay đổi, chứa cỏc thụng bỏo chi tiết
3. Giao thức dự phũng tài nguyờn - RSVP
3.1 Khỏi quỏt
Giao thức RSVP đƣợc sử dụng nhƣ một giao thức bỏo hiệu hỗ trợ cho RTP. Mục đớch của RSVP là cung cấp một cơ chế đảm bảo băng thụng cho cỏc hoạt động của cỏc ứng dụng. RSVP gửi tham số chất lƣợng dịch vụ QoS kết hợp với cỏc dữ liệu thời gian thực đƣợc truyền trờn mạng TCP/IP. Hỗ trợ giao thức RTP, giao thức RSVP cú thể giải quyết cỏc lỗi xảy ra trờn đƣờng truyền để đảm bảo cỏc tham số chất lƣợng. Thật vậy, giao thức RTP chỉ hỗ trợ việc truyền thụng điểm - điểm và khụng quản lý cỏc tham số liờn kết trờn mạng. RSVP khụng những tỏc động ở mỏy phỏt, mỏy thu mà cũn tỏc động trờn cả cỏc router trong mạng.[7]
RSVP thiết lập và duy trỡ kết nối duy nhất cho một luồng dữ liệu, xỏc lập một hệ thống quản lý thứ tự cỏc gúi và tạo modun điều khiển để quản lý cỏc nguồn tài nguyờn của cỏc nỳt mạng khỏc nhau. RSVP đƣa ra một mụ hỡnh tối ƣu để liờn kết cỏc dữ liệu từ một nguồn tới nhiều đớch. RSVP đúng vai trũ quản lý một cỏch độc lập cỏc host đớch để tự thớch nghi cỏc tham số chất lƣợng giữa khả năng cung cấp và nhu cầu đỏp ứng.[7]
Việc dành riờng cỏc tài nguyờn đƣợc yờu cầu bởi bờn thu bằng cỏch phỏt một yờu cầu chất lƣợng dƣới dạng một bản tin RSVP tƣơng thớch với nhu cầu của chỳng. Thực tế sử dụng RSVP nhằm đảm bảo chất lƣợng trong việc truyền tin. Để đảm bảo đƣờng truyền thụng suốt cỏc điểm cuối phải hoạt động ở chế độ kết nối. Mỏy thu phải thƣờng xuyờn gửi cỏc bản tin RSVP đến cỏc router để đảm bảo thụng suốt đƣờng truyền.
3.2 Hoạt động:
RSVP hoạt động trờn cơ sở xử lý cỏc gúi tin theo một yờu cầu chất lƣợng dịch vụ QoS. Hai thành phần chớnh thực hiện chức năng này là flowspec và filterspec. Flowspec cú chức năng kiểm tra luồng dữ liệu đƣợc truyền nhƣ một yờu cầu dịch vụ của cỏc ứng dụng mà kết quả là đƣa ra một yờu cầu về chất lƣợng dịch vụ QoS. Flowspec khụng trực tiếp chất lƣợng dịch vụ QoS nhƣng nú cú thể cõn nhắc và xem xột đến cỏc yờu cầu. Flowspec đƣa ra một yờu cầu về chất lƣợng dịch vụ cũn filterspec cú nhiệm vụ lọc bỏ cỏc gúi tin mà khụng đảm bảo yờu cầu về chất lƣợng
dịch vụ, những gúi này sẽ đƣợc cung cấp một phƣơng thức truyền tốt nhất cú thể để đỏp ứng yờu cầu chất lƣợng dich vụ. Mối quan hệ của flowspec và filterspec đƣợc mụ tả trờn hỡnh vẽ.
Hỡnh 15: Mối quan hệ giữa flowspec và filterspec