Chương 5: Cơ sở của giao thức potx

36 928 11
Chương 5: Cơ sở của giao thức potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương 5: sở của giao thức Nhóm 10 MỤC LỤC 1. KIỂM SOÁT LỖI 1.1 Kiểm soát lỗi bằng tay: - Khi nhập dữ liệu vào máy tính từ bàn phím, mỗi phím được ấn thì sẽ một từ mã được truyền vào máy theo từng bit nối tiếp thông qua một UART theo chế độ truyền bất đồng bộ. Chương trình trong máy tính sẽ điều khiển quá trình nhập, đọc, lưu ký tự và xuất ra màn hình. - Nếu cần xóa một ký tự, ta chỉ cần gõ một ký tự điều khiển xóa thích hợp (ví dụ phím backspace). Khi này chương trình sẽ xóa ký tự trước đó ra khỏi màn hình. 1.2 Kiểm tra dội lại: (Echo checking) 1 Chương 5: sở của giao thức Nhóm 10 - Khi một thiết bị đầu cuối kết nối đến một máy tính ở xa thông qua PSTN và modem. Những ký tự được nhập tại máy đầu cuối sẽ được gửi đến máy tính ở xa đọc, lưu giữ và truyền lại đầu cuối để hiển thị lên màn hình. 1.3 ARQ (Automatic Repeat Request) - Máy tính sẽ tự động kiểm tra để phát hiện lỗi truyền, sau đó gửi lại cho nguồn tin một thông điệp ngắn để báo nhận thành công hoặc yêu cầu gửi lại một bản sao của frame vừa đến (do lỗi). - 2 loại ARQ bản là idle RQ và continuous RQ. + Primary – P (phía cấp): là phía phát các khung dữ liệu + Secondary – S (thứ cấp): thu nhận các khung dữ liệu từ P. + I – frame (Information frame): khung thông tin là các khung chứa dữ liệu mà phía phát truyền cho phía thu. Mỗi khung chứa số danh định của khung đó. + ACK – frame (Acknowledge frame): là những khung được S truyền đến P để báo là đã nhận được dữ liệu tốt (không bị lỗi). + NAK – frame (Negative Acknowledge frame): là những khung được S truyền đến P để báo là khung nhận được bị lỗi. 2 Chương 5: sở của giao thức Nhóm 10 2. IDLE RQ Đặc điểm của lược đồ idle RQ: - Sử dụng trong kiểu truyền dữ liệu định hướng ký tự - Hoạt động theo chế độ bán song công, vì sau khi p gửi I- frame ,nó phải đợi cho đến khi nhận 1 thông báo từ phía S cho bieetsI- frame đó nhạn được thành công. Sau đó, P gửi I- frame kế tiếp nếu khung trước đó nhận đúng hoặc truyền lại khung cũ nếu I- frame không được nhận thành công. Có 2 loại Idle RQ: - Truyền lại ngầm định( không tường minh- implicit retansmission): S báo ACK- frame nếu nhận được I- frame đúng và sẽ không báo ACK- frame nếu nhận sai. Do đó, 3 Chương 5: sở của giao thức Nhóm 10 nếu P không nhận được ACK- Frame thì hiểu là I- frame đã bị lỗi và phải truyền lại. thời gian chờ ACK- frame của P được xác định trước và không được lâu hơn thời gian quá hạn( time expires) - Truyền lại tường minh(yêu cầu rõ- Implicit retransmission): S báo ACK- frame nếu nhận I- frame đúng và báo NAK nếu nhận I= frame bị lỗi. Idle ngầm định: Hoạt động của idle RQ: (a) truyền lại ngầm định Trong hình trên a/ truyền đúng b/ I- frame bị lỗi c/ Ack- frame bị lỗi - P chỉ một I – frame đang chờ ACK – frame. Khi P nhận được ACK- frame của khung I(N), P sẽ tiếp tục truyền đi khung kế tiếp I(N+1). - Khi S nhận được một I – frame bị lỗi, S sẽ bỏ qua và không gửi lại ACK – frame. - Khi P bắt đầu truyền I – frame, nó sẽ khởi động bộ định thời, nếu quá khoảng thời gian giới hạn thì P sẽ truyền lại I – frame đó. - Nếu P không nhận được ACK – frame trong khoảng thời gian định trước thì P sẽ truyền lại I – frame đó nhưng S sẽ loại bỏ bảng sao này do bị trùng lặp. điều này thực hiện là do trong mỗi I – frame điều truyền theo số tuần tự của khung. 4 Chương 5: sở của giao thức Nhóm 10 Idle tường minh - S sẽ trả về ACK – frame nếu nhận I – frame đúng. - Nếu P nhận được ACK- frame thì P sẽ dừng bộ định thời và khởi động lại đường truyền I – frame khác - Nếu S nhận được một I – frame bị lỗi thì I – frame đó sẽ bị loại và S sẽ trả lời bằng một NAK-frame. Nếu P không nhận được 1 ACK-frame(hoặc NAK-frame) trong khoảng thời gian định trước thì P sẽ truyền lại I – frame đó nhưng S sẽ loại bỏ bảng ao này do bị trùng lặp. 5 Chương 5: sở của giao thức Nhóm 10 Hoạt động của idle RQ: (b) truyền lại tường minh Trong hình trên: Idle RQ tường minh a/ truyền đúng b/ I – frame bị lỗi ACK- frame bị lỗi Nhận xét: với kiểu truyền tường minh thì tăng hiệu quả về thời gian hơn so với kỹ thuật truyền không tường minh vì thời gian S truyền NAK- frame về P ngắn hơn nhiều so với thời gian quá hạn trong kiểu truyền không tường minh. Đặc điểm chung của Idle RQ là sau khi P gởi một I – frame, P phải chờ cho đến khi nhận được ACK- frame tương ứng từ S. Do đó kiểu truyền này còn được gọi là dừng và chờ ( stop and wait). Trong cả 2 nguyên lý truyền trên đều trường hợp S nhận được I – frame và bản sao đều tốt và S phải loại bỏ bớt một. Như vậy, để S thể phân biệt được hai I – frame nhận được là khác nhau thì cần chế đánh số. chỉ số tuần trong mỗi I – frame được 6 Chương 5: sở của giao thức Nhóm 10 gọi là chỉ số tuần tự gởi N(S) và chỉ số tuần tự trong mỗi ACK- frame hay NAK-frame được gọi là chỉ số tuần tự nhận N(R). tương tự như cấu trúc khung truyền bất đồng bộ, các ký tự điều khiển vẫn được sủ dụng la: SOH, STX, ETX. Mỗi I – frame phải chứa 1 chỉ số tuần tự tại SOH. Ký tự SOH được chèn vào đầu một khối hoàn chỉnh để báo hiệu bắt đầu một I – frame mới. Tiếp theo là cấu trúc thong thường như truyền bất đồng bộ với BCC dung kiểm tra tổng khối để phía thu biết là nhận được khung đúng hay bị lỗi. Các khung ACK va NAK được dung cho mục đích báo nhận, theo sau là chỉ số tuần tự thu. Các khung này dung phương pháp kiểm tra tổng khối BCC. Cả 3 loại khung: I – frame, ACK- frame, NAK- frame đều được gọi là đơn vị dữ liệu giao thức PDU( protocol data unit) của giao thức Idle RQ. 2.1 Kiến trúc phân lớp Lược đồ tuần tự frame được trình bày ở hình trên mô tả các đặc trưng chủ yếu của hoạt động giao thức idle RQ. Tuy nhiên, trước khi đi vào các chi tiết lien quan đến giao thức, chúng ta sẽ xem xét cụ thể hơn khái niệm phan lớp. khái niệm này liên quan đến sự tách riêng 1 ứng dụng phối hợp và các tác vụ truyền tin thành hai tác vụ con rõ rang hơn, tác vụ con được gọi là lớp, cùng với một hình thức giao tiếp giữa chúng. Để mô tả khái niệm, hãy xem xét một qua trình ứng dụng AP (application process) chạy trên một máy tính truyền một tập tin đến một ứng dụng tương tự chạy trên một máy tính thứ 2 qua một liên kết số liệu nối tiếp dung một giao thức điều khiển lỗi idle RQ. Như đã mô tả, giao thức idle RQ sẽ cố gắng gửi các khối thông tin nối tiếp qua một 7 Chương 5: sở của giao thức Nhóm 10 liên kết số liệu theo phương phapstin cậy. Cũng tùy và BEB trên liên kết, một kích thướt khối tối đa sẽ được chỉ định để đảm bảo một tỉ lệ cao các I- frame không bị lỗi. Lớp giao thức idle RQ trong máy tính nguồn vì thế phải cung cấp 1 dịch vụ xác định cho lớp AP của người dung bên trên nó, dịch vụ này là truyền một chuỗi nối tiếp các khối thông tin , mỗi khối môt chiều dài tối đa xa định, đén quá trình ứng dụng tương tự trên máy tính đích. Hai thực thể giao thức ngang hang idle RQ liên quan đến các vấn đề phát hiện lỗi được thảo luận trước đây: tạo ra và phản hồi các frame báo nhận, timeout, phân phối các khối thông tin theo tuần tự giống như khi chúng được truyền. Ngược lại, hai quá trình ứng dụng ngang hàng chỉ liên quan đến thủ tục truyền tập tin dùng dịch vụ được cung cấp bởi lớp truyền tin (idle RQ), như là tên tập tin, chiều dài của nó, sự phân đoạn nội dung tập tin thành các khối nhỏ hơn trước khi truyền đến lớp truyền tin, vá tái thiết chúng thành một tập tin hoàn chỉnh khi nhận. Do đó, trong mỗi ứng dụng, tuần tự của các khối thông điệp là rất quan trọng,cú pháp và cấu trúc của thông điệp phải được xác định. Điều này ngụ ý rằng một giao thức AP to AP phải có tập PDU riêng của nó. Hai thực thể giao thức AP dung các dịch vụ của lớp truyền tin bên dưới dể truyền các PDU của chúng. Dĩ nhiên, đối với các lớp truyền tin, tất cả các PDU này chỉ đơn giản là các khối thông tin sẽ được truyền theo một cách. Thông thường, dịch vụ được cung cấp bởi một lớp truyền tin được biểu diễn dưới dạng một hàm thực thể dịch vụ với dữ liệu truyền đóng vai trò là tham số. vì dịch vụ liên hệ với lớp liên kết và thực hiện truyền số liệu nên hàm dịch vụ của người dùng tại giao tiếp truyền được ký hiệu là L_DATA.request và hàm dịch vụ tại giao tiếp nhận được ký hiệu lafL_DATA.indication. điều này được trình bày ở hình (a) dưới. Trong nhiều trường hợp, vì các user của một lớp liên quan đến dịch vụ được cung cấp chứ không liên quan đến cách thực hiện dịch vụ, nên khi định nghĩa các dịch vụ liên quan đến một lớp giao thức chúng ta thường trình bày tương tự hình (b). dạng trình bày này được gọi là lược đồ tuần tự theo thời gian. Để tách biệt rõ rang giữa hai lớp,, dung một hang đợi giữa chúng, như hình (c) ở dưới. đây là dạng cấu trúc dữ liệu đơn giản thực hiện theo nguyên lý hang đợi FIFO. Các phần tử được đưa vào đuôi của hang đợi và lấy ra từ đầu hang đợi. 8 Chương 5: sở của giao thức Nhóm 10 Thông thường, các hàm dịch vụ liên hệ đến một lớp được chuyển qua giữa các lớp bằng một cấu trúc dữ liệu gọi là khối điều khiển sự kiện_ECB. Tổng quát, nó là một record hay cấu trúc chứa kiểu hàm tại filed đầu tiên và một chuỗi ký tự hay byte chứa dữ liệu của user trong fiel thứ hai. bất cứ khi nào nguồn Ap hay lớp giao thức cao hơn muốn truyền một khối thông điệp, trước hết nó lấy một ECB tự do, ghi đoạn dữ liệu của user vào chuỗi ký tự hay byte, thiết lập filed chỉ loại hàm thành L_DATA.request và chèn ECB vào đuôi của hang đợi nhập của lớp liên kết (LS_user) để chuẩn bị sẵn cho thực thể giao thức cấp idle RQ đọc. Khi phần mềm thực thể giao thức idle RQ kế tiếp thực thi, nó phát hiện ra sự hiện diện của một ECB tại hang đợi nhập của lớp liên kết, nó đọc ECB từ dầu của hang đợi, và xử lý để tạo ra một I-frame hoàn chỉnh gồm nội dung thông điệp, header và trailer thích hợp. sau đó nó thực hiện truyền frame đến thực thể giao thức thứ cấp. giả sử frame nhận được không bị lỗi, thực thể thứ cấp sẽ loại bỏ header và trailer, và chuyển nội dung frame đến AP đích theo một ECB bằng cách dung hang đợi ngõ ra của lớp liên kết kèm theo hàm dịch vụ được đổi thành L_DATA.indication. sau đó, tạo và phản hồi một ACK- frame đến P. Khi đến lượt AP đích chạy, nó phát hiện và đọc ECB từ hang đợi LS_provider và xử lý nội dung của khối thông tin phụ thuộc vào giao thức AP to AP đã được định nghĩa. Thông thường nếu đay là khối thông điệp đầu tiên chứa tên tập tin, nó sẽ liên quan đến việc tạo ra một tập tin tên theo tên này và mở sẵn cho các hoạt động ghi tập tin ngay sau đó. Ở phía truyền, giả sử nhận được ACK- frame không lỗi, P xóa bộ đệm giữ I- frame vừa được báo nhận và kiểm tra hang đợi LS_user để tiếp nhận một ECB đang đợi khác. Nếu một ECB khác, thủ tục sẽ được lặp lại cho tới khi tất cả các tập tin được truyền. thông thường AP nguồn gởi một khối thông điệp kết thúc truyền để thông báo cho AP đích biết toàn bộ nội dung đã được truyền. 9 Chương 5: sở của giao thức Nhóm 10 Kiến trúc phân lớp: (a) Các hàm dịch vụ, (b) Lược đồ thứ tự theo thời gian, (c) Các giao tiếp dịch vụ 2.2 Đặc tả giao thức Định nghĩa hoạt động của một giao thức trong khi cho phép tất cả các sự kiện và các trường hợp kiểm soát lỗi thể làm cho vấn đề trở nên vô cùng phức tạp. vì vậy, sẽ mô tả giao thức bằng cách dung một trong các phương pháp rõ rang và hình thức hơn. Ba phương pháp phổ biến nhất để đặc tả giao thức truyền tin là dung các đồ chuyển trạng thái, các bảng sự kiện trạng thái mở rộng, và chương trình cấu trúc mức cao. 10 [...]... luồng và kiểm soát lỗi của giao thức continuous RQ - Xét luồng I-frame theo một hướng từ DTE nguồn tới DTE đích, ta các giao tiếp lớp giao thức continuous RQ như hình sau: 29 Chương 5: sở của giao thức Nhóm 10 Các giao tiếp lớp giao thức continuous RQ Mặc dù các đồ chuyển trạng thái đã cung cấp khá tốt về hoạt động bản của giao thức nhưng các khía cạnh trong hoạt động của chúng không thể được.. .Chương 5: sở của giao thức Nhóm 10 Trong nhiều trường hợp, chúng ta định nghĩa một giao thức như là một tổ hợp các đồ này đi đôi với lượt đồ tuần tự thời gian để mô tả các hàm dịch vụ user liên hệ với giao thức Bất chấp phương pháp đặc tả được dung, chúng ta đều mô phỏng một giao thức như một thiết bị máy móc tự động điều này nghĩa là giao thức, hay chính xác hơn là thực thể giao thức, ... Để chắc chắn điều này xãy ra,các giao tiếp sự kiện đến khác nhau được tách ra khỏi thực thể giao thức nhờ các hàng đợi,như trình bày trên hình 5.4.Có một cặp hàng đợi thêm vào giữa thực thể giao thức và thủ tục truyền/nhận điều khiển mạch truyền/nhận đặc biệt đang được dùng.Tương tự,cũng một cặp hàng đợi giữa thực thể 11 Chương 5: sở của giao thức Nhóm 10 giao thức và thủ tục định thời.Thông thường... (Sliding window) 25 Chương 5: sở của giao thức Nhóm 10 Với chế Stop-and-Wait, bản chất của vấn đề là tại một thời điểm chỉ một frame được truyền, do đó trong trường hợp độ dài liên kết lớn hơn độ dài của frame thì kết quả thật sự không hiệu quả Với chế cửa sổ trượt thì hiệu suất sẽ được cải thiện bằng việc cho phép nhiều frame thể truyền đồng thời Nguyên tắc hoạt động của chế cửa sổ trượt... các hành động sử lý liên quan đến sự kiện này 15 Chương 5:sở của giao thức Nhóm 10 2.4 Hiệu suất sử dụng liên kết Trước khi xem xét các thủ tục kiểm soát lỗi liên hệ với hai loại giao thức RQ liên tục(continuous RQ protocol),chúng ta sẽ đánh giá hiệu quả sử dụng khả năng sẵn của liên kết đối với giao thức idle RQ.Hiệu suất sử dụng U là tỉ số của hai đại lượng thời gian,mỗi đại lượng được đo... lan truyền Tp của liên kết - Nếu Tp > Tix thì U cũng bị chi phối bởi của sổ truyền K - Hiệu suất sử dụng liên kết U với một cửa sổ truyền K được tính như sau: U = 1 nếu K > 1+2a U = KTix/(Tix+2Tp) = K/(1+2Tp/Tix) = K/(1+2a) nếu K < (1+2a) - Tp = S/V 30 Chương 5:sở của giao thức - Tix = Ni/R Nhóm 10 Ni : số bit thông tin - a = Tp/Tix Ví dụ: một frame 1000 bit được truyền dùng một giao thức continuous... thái của giao thức đươi dạng một bảng Đối với mỗi trạng thái,mục chỉ định trong bảng (table entry) xác định một sự kiện đi,bất kỳ hành động đặc biệt nào,và trạng thái mới tương ứng với tất cả các sự kiện dênd thể,cũng như các yếu tố xác lập liên quan và tập các hành động tùy chọn Rõ ràng, bảng sự kiện-trạng thái mở rộng là một phương pháp trình bày tốt hơn vì nó cho 14 Chương 5:sở của giao thức. .. B đã báo tín hiệu nhận và A đã truyền F4,F5,F6 Và do đó A chỉ thể mở cửa sổ của nó để cho phép truyền 4 frame bắt đầu với F7 28 Chương 5:sở của giao thức Nhóm 10 Kỹ thuật đã mô tả trên cung cấp một dạng điều khiển lưu lượng thực sự, vì trạm thu chỉ phải điều tiết 7 frame (trừ frame mà nó báo nhận) Hầu hết các giao thức cũng cho phép một trạm cắt đứt lưu lượng các frame đến từ trạm khác bằng việc... phù hợp với giao thức idle RQ,thời gian xử lý một i-frame,T và thời gian đợi báo nhận ACK-Frame liên quan,T đều nhỏ so với các thời gian truyền T và T.Cũng vì ACK-Frame ngắn hơn nhiều so với một I-Frame nên T thể bỏ qua so với T Do đó tổng thời gian tối thiểu trước khi I-Frame kế tiếp thể được truyền xấp xỉ bằng T+2T Biểu thức U là U= Tix / (Tix + 2Tp) 16 Chương 5: sở của giao thức Nhóm 10... xóa I-frame của N+2 ra khỏi danh sách truyền lại và truyền lại N+1 trước khi tiếp tục truyền I-frame mới - Khi nhận được I-frame N+1 ,nội dung của các frame được xếp hàng trong danh sách liên kết được S phân phối đến lớp trên 19 Chương 5:sở của giao thức Nhóm 10 Trường hợp ACK-frame bị hỏng Giả sử ACK-frame N bị hỏng: - Khi nhận được ACK-frame N+1,P phát hiện chưa nhận được ACK-frame của N do đó . một giao thức điều khiển lỗi idle RQ. Như đã mô tả, giao thức idle RQ sẽ cố gắng gửi các khối thông tin nối tiếp qua một 7 Chương 5: Cơ sở của giao thức. mở rộng, và chương trình cấu trúc mức cao. 10 Chương 5: Cơ sở của giao thức Nhóm 10 Trong nhiều trường hợp, chúng ta định nghĩa một giao thức như là một

Ngày đăng: 22/03/2014, 11:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan