1. Trang chủ
  2. » Luận Văn - Báo Cáo

Trình bày các phương pháp điều khiển lỗi, lấy ví dụ cụ thể so sánh ưu nhược điểm

12 1,9K 1

Đ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

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 619,09 KB

Nội dung

I.Một số khái niệm điều khiển ..................................................................... 3 I.1 Điều khiển lưu lượng (điều khiển luồng) ........................................................... 3 II.2 Điều khiển lưu lượng truyền................................................................. 3 I.3 Điều khiển lưu lượng mạch vòng mở..................................................... 4 I.4 Điều khiển lưu lượng mạch vòng kín..................................................... 4 II.Các phương pháp điều khiền lỗi.............................................................. 5 II.A. Kỹ thuật dừng và chờ (Stop and Wait) .............................................. 5 II.A.1 ARQ dừng và đợi................................................................................................... 5 II.A.1.1 Hoạt động........................................................................................ 6 II.A.1.2 Hiệu suất ......................................................................................... 6 II.A.2.ARQ ngược lại n (ARQ go back n)................................................... 7 II.A.3.ARQ phát lại chọn lọc (ARQ Selective Repeat) .............................. 8 II.A.4.ARQ loại bỏ có chọn lọc (ARQ Selective reject) ............................. 8 II.B.Kỹ thuật cửa sổ trượt (Sliding Window) ............................................. 10 II.B .1. Hoạt động ......................................................................................... 10 II.B.2.Hiệu suất ............................................................................................ 11

Trang 1

1

BỘ QUỐC PHÒNG HỌC VIỆN KỸ THUẬT QUÂN SỰ

CƠ SỞ 2 THÀNH PHỐ HỒ CHÍ MINH CAO HỌC NGÀNH KHOA HỌC MÁY TÍNH



BÀI TẬP MÔN :

TRUYỀN THÔNG MẠNG MÁY TÍNH

Câu 3:”Trình bày các phương pháp điều khiển lỗi, lấy ví dụ cụ thể

so sánh ưu nhược điểm”

GIẢNG VIÊN HƯỚNG DẪN:

TIẾN SĨ : NGUYỄN QUANG UY Nhóm thực hiện: Nhóm 3

1 Đặng Vũ Tuấn

2 Nguyễn Thị Thanh Lệ

3 Đặng Tú Hoa

4 Phương Phương Thúy

5 Vũ Thị Lệ Huyền

6 Nguyễn Quốc Cường

KHÓA 24 THÁNG 03 – 2013

Trang 2

2

MỤC LỤC

Trang

I.Một số khái niệm điều khiển 3

I.1 Điều khiển lưu lượng (điều khiển luồng) 3

II.2 Điều khiển lưu lượng truyền 3

I.3 Điều khiển lưu lượng mạch vòng mở 4

I.4 Điều khiển lưu lượng mạch vòng kín 4

II.Các phương pháp điều khiền lỗi 5

II.A Kỹ thuật dừng và chờ (Stop and Wait) 5

II.A.1 ARQ dừng và đợi 5

II.A.1.1 Hoạt động 6

II.A.1.2 Hiệu suất 6

II.A.2.ARQ ngược lại n (ARQ go back n) 7

II.A.3.ARQ phát lại chọn lọc (ARQ Selective Repeat) 8

II.A.4.ARQ loại bỏ có chọn lọc (ARQ Selective reject) 8

II.B.Kỹ thuật cửa sổ trượt (Sliding Window) 10

II.B 1 Hoạt động 10

II.B.2.Hiệu suất 11

Trang 3

3

BÀI TẬP NHÓM MÔN TRUYỀN THÔNG MẠNG MÁY TÍNH

Câu 3:”Trình bày các phương pháp điều khiển lỗi, lấy ví dụ cụ thể so sánh ưu nhược điểm”

I.Một số khái niệm về điều khiển

I.1 Điều khiển lưu lượng (điều khiển luồng)

Trong mạng máy tính, điều khiển lưu lượng (tiếng Anh: flow control) là qui trình

quản lý tốc độ truyền dữ liệu giữa hai đầu kết nối của mạng lưới Chúng ta cần

phân biệt khái niệm này với khống chế tắc nghẽn (congestion control) - điều khiển

luồng dữ liệu khi tắc nghẽn đã xảy ra Các cơ chế điều khiển lưu lượng có thể được

phân loại tùy theo việc máy nhận có gửi thông tin phản hồi (feedback) lại cho máy

gửi hay không

Điều khiển lưu lượng có vai trò quan trọng, vì tình trạng một máy tính gửi thông tin tới một máy tính khác, với một tốc độ cao hơn tốc độ mà máy tính đích có thể nhận

và xử lý Tình huống này có thể xảy ra nếu các máy tính nhận phải chịu tải giao thông về dữ liệu cao hơn máy tính gửi, hoặc nếu máy tính nhận có năng lực xử lý kém hơn máy tính gửi

I.2 Điều khiển lưu lượng truyền

Điều khiển lưu lượng truyền được áp dụng khi dữ liệu được truyền từ thiết bị đầu

cuối (terminal equipment - DTE) sang một trung tâm chuyển mạch (switching center) nào đấy, hoặc được truyền thông giữa hai thiết bị DTE với nhau Tần số

truyền tin phải được khống chế vì các yêu cầu của mạng lưới hoặc của các thiết bị truyền tin (DTE)

Điều khiển lưu lượng truyền có thể được áp dụng biệt lập trên mỗi chiều mà tín hiệu được truyền thông, cho phép tần số truyền tin trên mỗi chiều khác nhau Phương pháp điều khiển lưu lượng truyền có hai cách, hoặc là dùng chế độ

"ngưng-và-truyền" (stop-and-go) (dừng và đợi - stop and wait) hoặc dùng hình thức cửa sổ

di động hay cửa sổ trượt (sliding window).

Điều khiển lưu lượng truyền có thể được thực hiện thông qua các đường điều khiển

trong một giao diện truyền thông dữ liệu (xem cổng serial (serial port) và RS 232), hoặc bằng cách dành riêng một số ký hiệu cho việc điều khiển (in-band control characters) nhằm báo hiệu cho lưu lượng truyền bắt đầu hoặc ngừng lại (chẳng hạn

các mã ASCII cho giao thức XON/XOFF) Các đường điều khiển thông dụng của

RS 232 bao gồm

Trang 4

4

1 RTS (Request To Send - Máy địa phương sẵn sàng nhận dữ liệu, yêu cầu gửi

dữ liệu sang)

2 CTS (Clear To Send - Máy ở xa sẵn sàng nhận dữ liệu)

3 DSR (Data Set Ready - Bộ điều chế dữ liệu (như modem) sẵn sàng để liên

lạc (gọi hoặc nhận cuộc gọi) với máy ở xa

4 DTR (Data Terminal Ready - Thiết bị nhận dữ liệu tại địa phương (như PC)

sẵn sàng nhận dữ liệu, cho phép bộ điều chế dữ liệu (modem) liên lạc (gọi hoặc nhận cuộc gọi) với máy ở xa

Phương pháp điều khiển trên thường được gọi là "điều khiển lưu lượng bằng phần

cứng" (hardware flow control) Còn XON/XOFF thường được coi là "điều khiển lưu lượng bằng phần mềm" (software flow control).

I.3 Điều khiển lưu lượng mạch vòng mở

Cơ chế điều khiển lưu lượng mạch vòng mở (Open-loop flow control) có đặc điểm

là nó không có thông tin phản hồi giữa máy nhận và máy truyền tin Phương pháp điều khiển truyền thông đơn giản này được sử dụng rộng rãi Việc bố trí tài nguyên

phải theo kiểu "đặt chỗ trước" (prior reservation) hoặc "từ nút tới nút" (hop-to-hop) Điều khiển lưu lượng mạch vòng mở có một số vấn đề cố hữu về việc cố

gắng sử dụng tối đa tài nguyên trong mạng ATM Việc cấp phát tài nguyên - như dung lượng bộ nhớ dùng làm bộ đệm chứa dữ liệu chẳng hạn - được thực hiện khi

thiết lập kết nối bằng CAC (Connection Admission Control - điều khiển đầu vào

dành cho mạng ATM) Việc cấp phát này được tiến hành dựa trên những thông tin

mà khi kết nối hoạt động thì các thông tin này đã trở nên cũ Thường thì dung lượng tài nguyên được cấp phát vượt quá mức độ cần thiết Điều khiển lưu lượng

mạch vòng mở được sử dụng trong các dịch vụ CBR (Constant Bit Rate - Tần số bit bất biến), VBR (Variable Bit Rate - Tần số bit thay đổi) và UBR (Unspecified Bit Rate - Tần số bit không xác định) (Xem thêm hợp đồng giao thông (traffic contract) và khống chế tắc nghẽn (congestion control)).

I.4 Điều khiển lưu lượng mạch vòng kín

Cơ chế điều khiển lưu lượng mạch vòng kín (Closed-loop flow control) có đặc

điểm là mạng có khả năng thông báo lại sự tắc nghẽn còn tồn đọng trong mạng cho máy truyền tin Máy truyền tin dùng thông tin này dưới nhiều hình thức để điều chỉnh hoạt động của nó cho thích ứng với các điều kiện hiện tại của mạng Điều

khiển lưu lượng mạch vòng kín được dùng trong các dịch vụ ABR (Available Bit Rate - Tần số bit khả dụng) (Xem thêm hợp đồng giao thông (traffic contract) và khống chế tắc nghẽn (congestion control)).

Trang 5

5

II.Các phương pháp điều khiền lỗi

II.A Kỹ thuật dừng và chờ (Stop and Wait)

Trong quá trình truyền frame thì dữ liệu không phải lúc nào cũng đến đích đúng và chính xác mà luôn có một tỉ lệ lỗi nào đó

Kiểm soát lỗi là cơ chế phát hiện và sửa lỗi xảy ra, đảm bảo dữ liệu đến đích đúng

và chính xác (hay tỉ lệ lỗi thấp hơn một ngưỡng cho phép nào đó)

Cơ chế kiểm soát lỗi dựa trên một số hoạt động sau :

 Phát hiện lỗi: dùng các mã phát hiện chẵn lẻ, CRC (thấy hay dùng trong

kỹ thuật), còn nếu trong internet người dùng hay tự check file thì dùng md5, SHA256

 Phúc đáp dương ACK (positive ACKnowledgement): báo rằng truyền ok

truyền bị lỗi

truyền, không nhận được tín hiệu phản hồi hoặc bên thu nhận được nhưng tín hiệu phản hồi bị mất

Cơ chế này dựa trên kỹ thuật điều khiển luồng, gọi là ARQ (Automatic Repeat Request - tự động yêu cầu phát lại) Có 3 phương án cơ bản :

3 ARQ phát lại chọn lọc

Điều khiển lỗi có thể coi là kỹ thuật điều khiển luồng có tính đến sai lệch khi truyền, thực tế chắc cũng ít kênh nào đạt được tỉ lệ lỗi cực thấp đến nỗi có thể dùng thẳng điều khiển luồng mà chắc dùng điều khiển lỗi

II.A.1 ARQ dừng và đợi

Là một phương pháp điều khiển lỗi dựa trên cơ chế điều khiển luồng dừng và đợi Giống như cơ chế dừng và đợi nhưng phản hồi về sẽ có 3 trường hợp :

ACK : bản tin đã đến đích và gửi đúng, tiếp tục gửi dữ liệu

NAK : báo lỗi, gửi lại thông tin

Không thấy gì : xảy ra khi frame phát đi bị mất hoặc đến được nơi nhưng thông tin phản hồi bị mất khi truyền, bên gửi sẽ gửi lại sau 1 thời gian chờ (time out)

Trang 6

6

Kỹ thuật dừng và đợi (Stop and wait): Kỹ thuật dừng và chờ đợi là một kỹ

thuật điều khiển luồng đơn giản nhất

II.A.1.1 Hoạt động

Giả sử có 2 bên phát A và thu B, bên A muốn truyền dữ liệu sang bên B Bên A sẽ gửi 1 Frame tín hiệu sang B, nếu bên B có thể tiếp nhận được gói tin (chưa bị quá tải) thì bên B sẽ gửi lại tín hiệu ACK (acknowledgement) để xác nhận

là đã nhận được gói tin, bên A nhận được xác nhận thì gửi tiếp, cứ thế mà truyền dần dần từng gói

Nếu bên B đang nhận quá nhiều thông tin (bên A gửi nhiều quá hoặc đơn giản nhiều bên khác gửi) thì bên B đơn giản là xử lý xong thông tin đã rồi mới gửi ACK -> không bị quá tải

II.A.1.2 Hiệu suất

Gọi n là hiệu suất của kỹ thuật dừng và đợi

Tf là thời gian truyền 1 khung tin

Td là thời gian trễ trên đường truyền

Tp là thời gian xử lý 1 khung tin

Tack là thời gian phát ACK của bên thu

Tp’ là thời gian xử lý ACK

Gọi T là thời gian cần thiết để phát xong 1 khung tin

T=Tf+Td+Tp+Tack+Td+Tp’

n = Tf / T

Do Tp,Tp’,Tack là rất nhỏ so với Tf nên T = Tf+2Td

Vậy n = Tf / (Tf+2Td) = 1 / (1+2a) với a = Td / Tf

Nhìn công thức thì sẽ thấy nếu Td nhiều thì hiệu suất n sẽ thấp Nếu Td rất nhiều

gian viết 1 bức thư (15 phút nếu văn phong có hạn), có thể ví như quá trình truyền khung tin ở trên (ở đây là từ não ra giấy) và thời gian gửi thư từ miền bắc vào nam

là 2 ngày (thư giấy), như là trễ đường truyền

Giả sử bạn gửi 1 bức thư từ miền bắc vào miền nam, mất 2 ngày chẳng hạn, miền Nam đọc được thư rồi thì gửi lại thư xác nhận cho miền Bắc, thêm 2 ngày nữa, rồi miền Bắc lại gửi thư cho miền Nam, thêm 2 ngày nữa Quá trình gửi và đợi rất tốn thời gian so với quá trình viết thư

Tuy nhiên nếu thời gian truyền thư là ngắn (a nhỏ) ví dụ bức thư viết truyền tay trong lớp (mất 10 giây chẳng hạn) thì hiệu suất rất cao : 15 phút viết mới mất 10

Trang 7

7

giây truyền và bên kia viết thư trả lời 15 phút nữa rồi truyền lại, chỉ mất chi phí 20 giây cho 30 phút viết (truyền dữ liệu), hiệu suất n cao

Đặc điểm : đơn giản và không hiệu quả

II.A.2.ARQ ngược lại n (ARQ go back n)

Là một phương pháp điều khiển lỗi dựa trên cơ chế điều khiển luồng cửa sổ trượt Khi không có lỗi thì thao tác xử lý của nó giống hệt cửa sổ trượt Tuy nhiên khi bên thu phát hiện lỗi:

 A phát frame i, B báo NAK frame i (các frame i-1 về trước truyền ok), thì dù trong lúc chờ phản hồi, bên A có phát đến frame i+n (n mấy chục, mấy trăm cũng mặc) thì nó vẫn phải truyền lại từ frame i trở đi

 Frame i bị mất trong khi truyền, bên A truyền frame i-1 rồi nhảy cóc sang i+1 luôn thì bên B sẽ phát hiện, phát NAK bắt truyền lại

 Frame i bị mất trong khi truyền, và bên A không truyền tiếp (có thể do bên B

đã đầy bộ nhớ đệm hoặc truyền hết tin rồi), bên A sau 1 thời gian time out không thấy gì cũng sẽ phát lại frame i trở đi

 ACK thứ i bị mất khi truyền lại, do nếu bên thu mà phát NAK thì sau đó nó

sẽ không phát ACK tiếp mà đợi phản hồi, nên giả sử có mất ACK thứ i, vẫn thấy ACK thứ i+1 thì bên phát hiểu là vẫn truyền ok thôi

 Nếu phát NAK bị lỗi, chờ không thấy gì (sau NAK bên thu sẽ đợi bên phát phát lại chứ không ACK xác nhận tiếp), bên phát không thấy gì, sau 1 thời gian time out sẽ phát lại khung i trở đi

Loại này thì các frame và ACK cần lưu số thứ tự hay một cách nhận dạng nào đó

để có thể phân biệt frame nào trước frame nào sau

Trang 8

8

Đây là hình so sánh ARQ ngược lại n và ARQ phát lại chọn lọc (hiệu suất cao hơn nhưng phức tạp hơn)

II.A.3.ARQ phát lại chọn lọc (ARQ Selective Repeat)

phát lại những frame bị lỗi

Nếu bên thu nhận được ACK nào thì nó sẽ hiểu là truyền đúng được frame đấy, nếu không nhận được hoặc nhận được NAK thì nó sẽ hiểu là cần truyền lại Phương pháp này cho hiệu suất cao nhưng lại phức tạp vì bên phát và thu đều cần truyền không theo thứ tự khi gặp lỗi

Các bạn có thể xem bài ARQ ngược lại n để xem hình so sánh 2 phương pháp

II.A.4.ARQ loại bỏ có chọn lọc (ARQ Selective reject)

Giống ARQ ngược lại n có điều là nó không phát lại từ frame thứ i trở đi mà chỉ lọai bỏ những frames cần truyền lại

Bên nhận phải có vùng đệm đủ lớn

Sử dụng chủ yếu cho liên kết vệ tinh với độ trễ trên đường truyền rất lớn

Nếu bên thu nhận được ACK nào thì nó sẽ hiểu là truyền đúng được frame đấy, nếu không nhận được hoặc nhận được NAK thì nó sẽ hiểu là cần truyền lại

Trang 9

9

Phương pháp này cho hiệu suất cao nhưng lại phức tạp vì bên phát và thu đều cần truyền không theo thứ tự khi gặp lỗi

Ví dụ :

Ví dụ hình bên:

A :Bên truyền B: Bên nhận Truyền và nhận trực tiếp giữa 2 máy không qua trung gian Khi fram 4 truyền đi bị lỗi, vẫn tiếp tục nhận fram 5 và fram 6 và gởi báo lỗi fram 4 về cho bên truyền

Trang 10

10

II.B.Kỹ thuật cửa sổ trượt (Sliding Window)

Là kỹ thuật điều khiển luồng , tốt hơn kỹ thuật dừng và đợi

II.B 1 Hoạt động

Bên phát được phát tối đa w khung trước khi bên nhận báo nhận(w:kích thước cửa sổ)

Mỗi khi phát 1 khung w giảm đi 1 đơn vị,mỗi khi nhận 1 báo nhận,w lại tăng lên 1 đơn vị,khi w=0 thì không được phép phát tiếp

Do bên phát được phát đồng thời w khung nên cần có 1 trường đánh số thứ tự các khung tin

Giả sử cần k bit đánh số thứ tự các khung tin thì 1<= w <= 2^k - 1

Vd: Dùng 3 bit đánh số thứ tự các khung tin => w<8, chọn w=7, máy thu phải có

bộ nhớ đệm để lưu trữ và xử lý tương ứng

Trang 11

11

ở ví dụ này bên phát được phép truyền tối đa 3 frame tiếp theo Lúc đầu bên máy phát sẽ truyền đi 3 frame và chờ phản hồi, nếu có ACK (như trên hình là RR3 tức

là đã sẵn sàng nhận frame 3 trở đi) thì bên phát sẽ gửi tiếp, tuy nhiên cùng với thời gian gửi thì bên thu cũng gửi lại RR để báo bên phát còn có thể truyền bao nhiêu frame nữa Nếu như bên thu bị sao đó hoặc "chán" không muốn nhận thêm thì chỉ đơn giản không gửi nữa , bên phát sẽ chỉ phát được đến mức tối đa 7 frame từ thông báo cuối cùng thôi hoặc nếu gửi chậm chậm thì bên phát sau khi truyền thả phanh đến hết bộ đệm bên thu thì khi nào nhận được thông báo mới bắt đầu truyền tiếp

II.B.2.Hiệu suất

Hiệu suất của kỹ thuật cửa sổtrượt (sliding window) được tính như sau:

+n = 1 nếu w>=2a+1

+n = w / (1+2a) nếu w<2a+1

Vẫn ví dụ gửi thư như ở kỹ thuật dừng và đợi: Giờ không gửi một bức thư nữa, người miền Nam bảo cứ gửi thư đi, hòm thư nhà tôi chứa được 10 bức chẳng hạn Thời gian thì vẫn mất 2 ngày để nhận thư, còn thời gian để viết xong thư coi như là

1 ngày 1 bức đi (15 phút 1 bức thì không thể viết suốt ngày đêm được, lâu rồi cũng chán)

Đầu tiên phải viết 1 bức hỏi xem bên kia thế nào, có muốn nhận thư không, nhận được bao nhiêu, quá trình khởi động mất 5 ngày ( mất 2 ngày để thư đến đích, 1 ngày để bên kia viết và 2 ngày để thư đáp trả lại)

Bên nhận thư báo lại là cứ viết thoải mái đi, hoặc không thấy hồi âm thì thôi khỏi gửi Nếu nhận thông báo đồng ý, từ đây người viết ngày nào cũng viết cũng gửi Khi đó người viết đã viết đến bức thứ 6 thì nhận được thông tin là đã nhận được thư thứ nhất (tức là có thể truyền đến thư thứ 11) thì mới đầy hòm thư, hôm sau người viết viết thư thứ 7 thì lại thông báo có thể truyền đến thư 12 cứ thế, không mất công đợi , hiệu suất 100% nếu bên nhận gửi cũng nhanh bằng hoặc hơn bên gửi, nếu bên kia xử lý chậm đọc chậm thì hòm thư cứ đầy dần, người gửi thấy 10 bức không thấy hồi âm thì sẽ dừng lại, đến khi bên kia gửi xác nhận thì mới gửi tiếp nên không bị đầy, "bục" hòm thư

Phương thức này hiệu suất cao, maximum 100% (tất nhiên nếu không tính giai đoạn khởi động chờ xem bên kia có phản hồi không hay lại nhầm địa chỉ đi đâu), tốt hơn dừng và đợi nhiều, nhưng cần bộ đệm

Quá trình truyền nhận vừa nói trên là trong trường hợp có thể song công (vừa truyền vừa nhận)

Ngày đăng: 26/07/2015, 13:40

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w