Tản mạng về mạng máy tính

Jumptozero

Member
23/05/2020
2
14 bài viết
Tản mạng về mạng máy tính
Phần mềm mạng
Đây là thành phần quan trọng thật sự làm cho mạng máy tính vận hành chứ không phải là phần cứng. Phần mềm mạng được xây dựng dựa trên nền tảng của 3 khái niệm là giao thức (protocol), dịch vụ (service) và giao diện (interface).
+ Giao thức (Protocol): Mô tả cách thức hai thành phần giao tiếp trao đổi thông tin với nhau.
+ Dịch vụ (Services): Mô tả những gì mà một mạng máy tính cung cấp cho các thành phần muốn giao tiếp với nó.
+ Giao diện (Interfaces): Mô tả cách thức mà một khách hàng có thể sử dụng được các dịch vụ mạng và cách thức các dịch vụ có thể được truy cập đến.
Cấu trúc thứ bậc của giao thức
Nền tảng cho tất cả các phần mềm làm cho mạng máy tính hoạt động chính là khái niệm kiến trúc thứ bậc của giao thức (protocol hierachies). Nó tổ chức các dịch vụ mà một mạng máy tính cung cấp thành các tầng/lớp (layers).

Hai thành phần bộ phận ở hai máy tính khác nhau, nhưng ở cùng cấp, chúng luôn luôn thống nhất với nhau về cách thức mà chúng sẽ trao đổi thông tin. Quy tắc trao đổi thông tin này được mô tả trong một giao thức (protocol)

Một hệ mạng truyền tải dữ liệu thường được thiết kế dưới dạng phân tầng. Để minh họa ý nghĩa của nó ta xem xét mô hình hoạt động của hệ thống gởi nhận thư tín thế giới.

Hai đối tác A ở Paris và B ở thành phố Cần Thơ thường xuyên trao đổi thư từ với nhau. Vì A không thể nói tiếng và B không thể nói tiếng Pháp, trong khi đó cả hai có thể hiểu Tiếng Anh, cho nên nó được chọn là ngôn ngữ để trao đổi thư từ, văn bản giữa A và B. Cả hai gửi thư từ cơ quan của họ. Trong công ty có bộ phận văn thư lãnh nhiệm trách nhiệm tập hợp và gửi tất cả các thư của công ty ra bưu điện.
Tiến trình A gửi cho B một lá thư diễn ra như sau:
1. A viết một lá thư bằng tiếng Pháp bằng bút máy của anh ta.
2. A đưa lá thư cho thư ký, biết Tiếng Anh để thông dịch lá thư ra tiếng Anh, sau đó bỏ lá thư vào bao thư với địa chỉ người nhận là địa chỉ của B.
3. Nhân viên của bộ phận văn thư chịu trách nhiệm thu thập thư của công ty ghé qua văn phòng của A để nhận thư cần gửi đi.
4. Bộ phận văn thư thực hiện việc phân loại thư và dán tem lên các lá thư bằng một máy dán tem.
5. Lá thư được gửi đến bưu điện ở Paris.
6. Lá thư được ô tô chuyển đến trung tâm phân loại ở Paris.
7. Những lá thư gửi sang Việt Nam được chuyển đến sân bay ở Paris bằng tàu điện ngầm.
8. Lá thư gửi sang Việt Nam được chuyển đến sân bay Tân Sơn Nhất (Thành phố Hồ Chí Minh) bằng máy bay
9. Thư được ô tô chở đến trung tâm phân loại thư của Thành phố Hồ Chí Minh.
10. Thư cho cơ quan của B được chuyển về Bưu điện Cần Thơ bằng ô tô
11. Thư cho cơ quan của B được chuyển đến công ty của B bằng ô tô
12. Bộ phận văn thư của công ty của B tiến hành phân loại thư.
13. Thư được phát vào một giờ đã định đến các người nhận, trong trường hợp này có văn phòng của B.
14. Thư ký của B mở thư ra và dịch nội dung lá thư cho B sang Tiếng Việt .
15. B đọc lá thư của A đã gửi cho anh ta.
Ta có thể tóm tắt lại tiến trình trên bằng một mô hình phân tầng với các nút mạng thư tín này như sau:
mohinh7lop.png

Trong mô hình trên, mỗi tầng thì dựa trên tầng phía dưới. Ví dụ, các phương tiện giao thông như ô tô, tàu hỏa , máy bay (của tầng liên kết dữ liệu), hay đường ô tô, đường sắt, sân bay (của tầng vật lý),...
Đối với mỗi tầng, các chức năng được định nghĩa là các dịch vụ cung cấp cho tầng phía trên nó. Các đường thẳng màu đỏ trong sơ đồ xác định các dịch vụ được cung cấp bởi các tầng khác nhau. Thêm vào đó, các chức năng của từng tầng tương ứng với các luật được gọi là các giao thức (Protocols)
Nguồn: Giáo trình mạng máy tính của thầy Ngô Bá Hùng và thầy Phạm Thế Phi
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Ví dụ về cấu trúc thứ bậc của giao thức
Xem xét một ví dụ khác liên quan đến hệ thống truyền tập tin từ máy tính X sang máy tính Y. Hai máy này được nối với nhau bởi một dây cáp tuần tự. Chúng ta xem xét một mô hình 3 tầng:
+ Người sử dụng muốn truyền một tập tin sẽ thực hiện một lời gọi đến tầng A nhờ vào một hàm đã được định nghĩa sẵn, send_file(fileName, destination). Trong đó fileName là tập tin cần truyền đi, destination là địa chỉ của máy tính nhận tập tin.
+ Tầng A phân chia tập tin thành nhiều thông điệp và truyền từng thông điệp nhờ lệnh send_message (MessageNo, destination) do tầng B cung cấp.
+ Tầng B quản lý việc gửi các thông điệp, đảm nhiệm việc phân chia các thông điệp thành nhiều đơn vi truyền tin, gọi là các khung (frame), gửi các khung giữa X và Y tuân theo luật đã định trước (protocol) như tần suất gửi, điều khiểu luồng, chờ báo nhận của bên nhận, điều khiển lỗi.
A: Tầng ứng dụng
B: Tầng quản lý thông điệp
C: Tầng vật lý
+ Tầng B giao cho tầng C một chuỗi các bit mà chúng sẽ được truyền lên đường truyền vật lý, không quan tâm gì về ý nghĩa của các bit, để đến nơi nhận.
Thông tin được truyền trên một kênh truyền đơn giản hoặc phức tạp và được định hướng đến nơi nhận. Bên nhận thực hiện ngược lại tiến trình của bên gửi. Cả bên nhận và bên gửi cùng có số lần/ nhận giống nhau.
ccx.png

Ta cũng chú ý rằng, kích thước của các đơn vị truyền tin trong từng tầng là khác nhau. Ở tầng A đơn vị là một tập tin. Tầng B, đơn vị truyền tin là các khung theo một cấu trúc đã được định nghĩa. Tầng C, đơn vị truyền tin là các tín hiệu được truyền trên đường truyền vật lý.
Dịch vụ mạng
Hầu hết các tầng mạng đều cung cấp một hoặc cả hai kiểu dịch vụ: Định hướng nối kết và không nối kết.
+ Dịch vụ định hướng nối kết (Connection-oriented): Đây là dịch vụ vận hành theo mô hình của hệ thống điện thoại. Đầu tiên bên gọi phải thiết lập một nối kết, kế đến thực hiện nhiều cuộc trao đổi thông tin và cuối cùng thì giải phóng kết nối.
+ Dịch vụ không kết nối (Connectionless): Đây là dịch vụ vận hành theo mô hình kiểu thư tín. Dữ liệu của bạn trước tiên được đặt vào trong một bao thư trên đó có ghi rõ địa chỉ người nhận và địa chỉ của người gửi. Sau đó sẽ gửi cả bao thư và nội dung đến người nhận.
Một số những dịch vụ thường được cung cấp ở mỗi tầng mạng cho cả hai loại có nối kết và không nối kết được liệt kê ở bảng dưới đây:
evt.png

Mỗi loại dịch vụ được cung cấp với chất lượng khác nhau. Các loại dịch vụ có nối kết thường đảm bảo thứ tự đến nơi của thông tin như thứ tự chúng đã được gửi đi, cũng như đảm bảo dữ liệu luôn đến nơi. Hai điều này thường không được đảm bảo trong các dịch loại không kết nối.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Các phép toán của dịch vụ
Một dịch vụ thường được mô tả bằng một tập hợp các hàm cơ bản (primitives) hay đôi khi còn gọi là các tác vụ (operations) sẵn có cho các khách hàng sử dụng. Một số các hàm cơ bản thường có cho một dịch vụ định hướng kết nối như sau:
bnmk.png

Quá trình trao đổi thông tin giữa các Client, người có nhu cầu sử dụng dịch vụ và server, người cung cấp dịch vụ được thực hiện bằng cách sử dụng các hàm cơ sỏ trên được mô tả như kịch bản sau:
lopi.png

Sự khác biệt giữa dịch vụ và giao thức
Giao thức và dịch vụ là hai nền tảng rất quan trọng trong việc thiết kế và xây dựng một hệ thống mạng. Cần hiểu rõ ý nghĩa và phân biệt sự khác nhau giữa chúng.
+ Dịch vụ: là một tập các phép toán mà một tầng cung cấp cho tầng phía trên của nói gọi sử dụng.
+ Giao thức: là một tập các luật mô tả khuôn dạng dữ liệu, ý nghĩa của các gói tin và thứ tự các gói tin được sử dụng trong quá trình giao tiếp.
+ Chú ý: Cùng một service có thể được thực hiện bởi các protocol khác nhau; mỗi protocol có thể được cài đặt theo một cách thức khác nhau (sử dụng cấu trúc dữ liệu khác nhau, ngôn ngữ lập trình khác nhau, vv.)
cvty.png

 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Mô hình tham khảo OSI
Để dễ dàng cho việc nối kết và trao đổi thông tin giữa các máy tính với nhau, vào năm 1983, tổ chức tiêu chuẩn thế giới ISO đã phát triển một mô hình cho phép hai máy tính có thể gửi và nhận dữ liệu cho nhau. Mô hình này dưa trên tiếp cận phân tầng (lớp), với mỗi tầng đảm nhiệm một số các chức năng cơ bản nào đó.

Để hai máy tính có thể trao đổi thông tin được với nhau cần có rất nhiều vấn đề liên quan. Ví dụ như cần có Card mạng, dây cáp mạng, điện thế tín hiệu trên cáp mạng, cách thức đóng gói dữ liệu, điều khiển lỗi đường truyền vv... Bằng cách phân chia các chức năng này vào những tầng riêng biệt nhau, việc viết các phần mềm để thực hiện chúng trở nên dễ dàng hơn. Mô hình OSI giúp đồng nhất các hệ thống máy tính khác biệt nhau khi chúng trao đổi thông tin. Mô hình này gồm có 7 tầng:

Tầng 7: Tầng ứng dụng (Application Layer)
Đây là tầng trên cùng, cung cấp các ứng dụng truy xuất đến các dịch vụ mạng. Nó bao gồm các ứng dụng của người dùng, ví dụ như các Web Browser (Netscape Navigator, Internet Explorer), các Mail User Agent (Outlook Express, Netscape Messenger,..) hay các chương trình làm server cung cấp các dịch vụ mạng như các Web Server (Netscape Enterprise, Internet Information Service, Apache,..), Các FTP Server, các Mail Server (Send Mail, MDeamon). Người dùng mạng giao tiếp trực tiếp với tầng này.

Tầng 6: Tầng trình bày (Presentation Layer)
Tầng này đảm bảo các máy tính có kiểu định dạng dữ liệu khác nhau vẫn có thể trao đổi thông tin cho nhau. Thông thường các máy tính sẽ thống nhất với nhau về một kiểu định dạng dữ liệu trung gian để trao đổi thông tin giữa các máy tính. Một dữ liệu cần gửi đi sẽ được tầng trình bày chuyển sang định dạng trung gian trước khi nó được truyền lên mạng. Ngược lại, khi nhận dữ liệu từ mạng, tầng trình bày sẽ chuyển dữ liệu sang định dạng riêng của nó.

Tầng 5: Tầng giao dịch (Session Layer)
Tầng này cho phép các ứng dụng thiết lập , sử dụng và xóa các kênh giao tiếp giữa chúng (được gọi là giao dịch). Nó cung cấp cơ chế cho việc nhận biết tên và các chức năng về bảo mật thông tin khi truyền qua mạng.

Tầng 4: Tầng vận chuyển (Transport Layer)
Tầng này đảm bảo truyền tải dữ liệu giữa các quá trình. Dữ liệu gửi đi được đảm bảo không có lỗi, theo đúng trình tự, không bị mất mát, trùng lặp. Đối với các gói tin có kích thước lớn, tầng này sẽ phân chia chúng thành các phần nhỏ trước khi gửi đi, cũng như tập hợp lại chúng khi nhận được.

Tầng 3: Tầng mạng (Network Layer)
Tầng này đảm bảo các gói dữ liệu (Packet) có thể truyền từ máy tính này đến máy tính kia cho dù không có đường truyền vật lý trực tiếp giữa chúng. Nó nhận nhiệm vụ tìm đường đi cho dữ liệu đến các đích khác nhau trong mạng.

Tầng 2: Tầng liên kết dữ liệu (Data-Link Layer)
Tầng này đảm bảo truyền tải các khung dữ liệu (Frame) giữa hai máy tính có đường truyền vật lý nối trực tiếp với nhau. Nó cài đặt cơ chế phát hiện và xử lý lỗi dữ liệu nhận.

Tầng 1: Tầng Vật Lý (Physical Layer)

Điểu khiển việc truyển tải thật sự các bit trên đường truyền vật lý. Nó định nghĩa các tín hiệu điện, trạng thái đường truyền, phương pháp mã hóa dữ liệu, các loại đầu nối được sử dụng.

Về nguyên tắc, tầng n của một hệ thống chỉ giao tiếp, trao đổi thông tin với tầng n của hệ thống khác. Mỗi tầng sẽ có các đơn vị truyền dữ liệu riêng:
+ Tầng Vật Lý: bit
+ Tầng liên kết dữ liệu: Khung (Frame)
+ Tầng mạng: Gói tin (Packet)
+ Tầng vận chuyển : Đoạn (Segment)
rrrcv.png

Trong thực tế, dữ liệu được gửi đi từ tầng trên xuống tầng dưới cho đến tầng thấp nhất của máy tính gửi. Ở đó, dữ liệu sẽ được truyền đi trên đường truyền vật lý. Mỗi khi dữ liệu được xuống tầng phía dưới thì nói bị "gói" lại trong đơn vị dữ liệu của tầng dưới. Tại bên nhận, dữ liệu sẽ được truyền ngược lên các tầng cao dần. Mỗi lần qua một tầng, đơn vị dữ liệu tương ứng sẽ được tháo ra.

Đơn vị dữ liệu của mỗi tầng sẽ có một tiêu đề (header) riêng.

OSI chỉ là mô hình tham khảo, mỗi nhà sản xuất khi phát minh ra hệ thống mạng của mình sẽ thực hiện các chức năng ở từng tầng theo những cách thức riêng. Các cách thức này thường được mô tả dưới dạng các chuẩn mạng hay các giao thức mạng. Như vậy dẫn đến trường hợp cùng một chức năng nhưng hai hệ thống mạng khác nhau sẽ không tương tác được với nhau. Hình dưới sẽ so sánh kiến trúc của các hệ điều hành mạng thông dụng với mô hình OSI.

Để thực hiện các chức năng ở tầng 3 và tầng 4 trong mô hình OSI, mỗi hệ thống mạng sẽ có các protocol riêng:
+ UNIX: Tầng 3 dùng giao thức IP, tầng 4 giao thức TCP/UDP
+ Netware: Tầng 3 dùng giao thức IPX, tầng 4 giao thức SPX
+ Microsoft định nghĩa giao thức NETBEUI để thực hiện chức năng của cả tầng 3 và tầng 4.
Nếu chỉ dừng lại ở đây thì các máy tính UNIX, Netware và NT sẽ không trao đổi thông tin được với nhau. Với sự lớn mạng của mạng Internet, các máy tính cài đặt các hệ điều hành khác nhau đòi hỏi phải giao tiếp được với nhau, tức phải sử dụng chung một giao thức. Đó chính là bộ giao thức TCP/IP, giao thức của mạng Internet.
tgbn.png

 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Giới thiệu tầng vật lý của hệ thống truyền dữ liệu
Giới thiệu mô hình của một hệ thống truyền dữ liệu đơn giản
Về cơ bản, một hệ thống mạng truyền dữ liệu đơn giản nhất được mô tả như sau:
ccvs.png

Trong mô hình trên, dữ liệu gồm có văn bản, hình ảnh, âm thanh, phim ảnh cần được số hóa dưới dạng nhị phân (bit 0,1) để dễ dàng cho xử lý và truyền tải. Thiết bị truyền được nối với thiết bị nhận bằng một đường truyền hữu tuyến hoặc vô tuyến.

Truyền tin là quá trình thiết bị truyền gửi đi lần lượt các bit của dữ liệu lên kênh truyền để nó lan truyền sang thiết bị nhận và như thế là dữ liệu đã được truyền đi. Các thiết bị truyền và nhận là các máy tính. Để cho hệ thống này có thể hoạt động được thì các vấn đề cần phải được xem xét:
+ Cách thức mã hóa thông tin thành dữ liệu số
+ Các loại kênh truyền dẫn có thể sử dụng để truyền tin
+ Sơ đồ kết nối các thiết bị truyền và nhận lại với nhau
+ Cách thức truyền tải các bit từ thiết bị truyền sang thiết bị nhận.
Hệ thống trên là hệ thống cơ bản nhất cho các hệ thống truyền dữ liệu. Nó thực hiện đầy đủ các chức năng mà tầng vật lý trong mô hình OSI quy định.

Vấn đề số hóa thông tin
Vấn đề số hóa thông tin
Thông tin tồn tại dưới nhiều hình thức khác nhau. Để xử lý, mà đặc biệt để truyền tải thông tin ta cần phải mã hóa chúng.
polp.png

Trong thời đại chúng ta, thông tin thường được thể hiện dưới dạng các trang tài liệu hỗn hợp, như các trang Web, mà ở đó đồng thời có thể thể hiện văn bản, hình ảnh tĩnh, hình ảnh động, phim ảnh,,... Thông tin thực tế được thể hiện dưới dạng đa phương tiện. Mỗi một loại thông tin sở hữu hệ thống mã hóa riêng, nhưng kết quả thì giống nhau: Một chuỗi các số 0 và 1. Việc truyền tải thông tin bao gồm việc truyền tải các bit này.
Mô hình mã hóa như sau:
cvfg.png

Số hóa văn bản
cvgh.png

Hệ thống mã hóa đầu tiên liên quan đến văn bản là hệ thống mã Morse, được sử dụng rộng rãi trước khi có máy tính. Đây là một bộ mã nhị phân sử dụng 2 ký tự chấm (.) và gạch (-) để số hóa văn bản (có thể xem tương đương với các bit 0 và 1).
Tuy nhiên nó có nhiều điểm bất lợi sau:
+ Nghèo nàn: ít các ký tự được mã hóa;
+ Nó sử dụng sự phối hợp của các dấu gạch và dấu chấm với độ dài khác nhau, điều này không được tiện lợi đặc biệt cho các ký tự có tần suất xuất hiện giống nhau.
Chính vì thế nó không được dùng để số hóa thông tin.
Nếu chúng ta quy định rằng số bit dùng để mã hóa cho một ký tự phải bằng nhau thì với p bit ta có thể mã hóa cho 2^p kí tự. Hệ thống mã hóa như thế được dùng trong quá khứ.
Ví dụ:
+ 5 bit: dùng trong hệ thống ATI (Alphabet Telegraphique International)
+ 7 bit: gọi là mã ASCII (American Standard Code for Informatics Interchange) được dùng rộng rãi trong máy tính.
vbhj.png

Bảng mã này có cả các ký tự không in được gọi là các ký tự điểu khiển được dùng để tạo ra các tác vụ trên các thiết bị tin học hay dùng để điều khiển thông tin truyền tải.
Bảng mã 8 bits: có mã ASCII mở rộng và mã EBCDIC
Vì máy tính lưu thông tin dưới dạng các byte 8 bit nên khi sử dụng mã ASCII 7 bit thì bit có trọng số lớn nhất (vị trí thứ 7) luôn có giá trị là 0. Chúng ta có thể sử dụng bit này để định nghĩa các ký tự đặc biệt bằng cách đặt nó giá trị 1. Và như thế chúng ta có một bảng ASCII mở rộng. Tuy nhiên, điều này sẽ dẫn đến việc tồn tại nhiều bảng ASCII mở rộng khác nhau làm khó khăn trong việc trao đổi thông tin trên phạm vi toàn thế giới.

Mã EBCDIC dùng 8bits để mã hóa nhờ đó có thể thể hiện được 256 ký tự. Nó được sử dụng trong các máy tính IBM. Tuy nhiên nó không thông dụng như mã ASCII.

Mã 16 bit: Mã Unicode.
Mã này phát triển gần đây để thỏa mãn nhu cầu trao đổi thông tin giữa những người dùng Web. Nó mã hóa hầu hết tất cả các ký tự của các ngôn ngữ trên thế giới. Nó tương thích với mã ASCII 7 bit ở 127 ký tự đầu tiên. Hiên nay mã Unicode được sử dụng rộng rãi.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Số hóa hình ảnh tĩnh
Ảnh số thật sự là một ảnh được vẽ nên từ các đường thẳng và mỗi đường thẳng được xây dựng bằng các điểm. Một ảnh theo chuẩn VGA với độ phân giải 640*480 có nghĩa là một ma trận gồm 480 đường ngang và mỗi đường gồm 640 điểm ảnh (pixel)
vbnn.png

Một điểm ảnh được mã hóa tùy thuộc vào chất lượng của ảnh :
Ảnh đen trắng: sử dụng một bit để mã hóa một điểm: giá trị 0 cho điểm ảnh màu đen và 1 cho điểm ảnh màu trắng.
Ảnh gồm 256 mức xám: Mỗi điểm được thể hiện bằng một byte (8 bits);
Ảnh màu: người ta chứng minh rằng một màu là sự phối hợp của ba màu cơ bản là đỏ (Red), xanh lá (Green) và xanh dương (Blue). Vì thế một màu bất kỳ có thể được biểu diễn bởi biểu thức:
x=aR+bG+cB.
Trong đó a,b,c là các lượng của các màu cơ bản. Thông thường một ảnh đẹp sẽ có lượng màu với giá trị từ 0 đến 255. Và như thế, một ảnh màu thuộc loại này được thể hiện bằng 3 ma trận tương ứng cho 3 loại màu cơ bản. Mỗi phần tử của mảng có giá trị của 8 bits. Chính vì thế cần có 24 bit để mã hóa cho một điểm ảnh màu.

Kích thước của các ảnh màu là đáng kể, vì thế người ta cần có phương pháp mã hóa để giảm kích thước của các ảnh.

Số hóa âm thanh và phim ảnh

Dữ liệu kiểu âm thanh và phim ảnh thuộc kiểu tín hiệu tuần tự. Các tín hiệu tuần tự được số hóa theo cách thức sau đây:
bnmkc.png

Dung lượng tập tin nhận được phụ thuộc hoàn toàn vào tần số lấy mẫu f và số lượng bit dùng để mã hóa giá trị thang đo p (chiều dài mã cho mỗi giá trị).

Các loại kênh truyền dữ liệu

Kênh truyền hữu tuyến
Cáp thuộc loại kênh truyền hữu tuyến được sử dụng để nối máy tính và các thành phần mạng lại với nhau. Hiện nay có 3 loại cáp được sử dụng phổ biến nhất là: Cáp xoắn đôi (twisted pair), cáp đồng trục (coax) và cáp quang (fiber optic). Việc chọn lựa loại cáp sử dụng cho mạng tùy thuộc vào nhiều yếu tố như: giá thành, khoảng cách, số lượng máy, tốc độ yêu cầu, băng thông.
Cáp xoắn đôi (Twisted Pair)
Cáp xoắn đôi có hai loại: Có vỏ bọc (Shielded Twisted Pair) và không có vỏ bọc (Unshielded Twisted Pair). Cáp xoắn đôi có vỏ bọc sử dụng một vỏ bọc đặc biệt quấn xung quanh dây dẫn có tác dụng chống nhiễu. Cáp xoắn đôi trở thành loại cáp mạng được sử dụng nhiều nhất hiện nay. Nó hỗ trợ hầu hết các khoảng tốc độ và các cấu hình mạng khác nhau và được hỗ trợ bởi hầu hết các nhà sản xuất thiết bị mạng.
vgh.png

Các đặc tính của cáp xoắn đôi là:
+ Được sử dụng trong mạng Token ring (cáp loại 4 tốc độ 16Mbps), chuẩn mạng Ethernet 10BaseT (Tốc độ 10Mbps), hay chuẩn mạng 100BaseT (tốc độ 100Mbps).
+ Giá cả chấp nhận được
+ UTP thường được sử dụng bên trong các tòa nhà vì nó có ít khả năng chống nhiễu hơn so với STP
+ Cáp loại 2 có tốc độ đạt đến 1Mbps (cáp điện thoại)
+ Cáp loại 3 có tốc độ đạt đến 10Mbps (Dùng trong mạng Ethernet 10BaseT)
+ Cáp loại 5 có tốc độ đạt đến 100Mbps (dùng trong mạng 10BaseT và 100BaseT) (Hình b)
+ Cáp loại 5E và loại 6 có tốc độ đạt đến 1000 Mbps (dùng trong mạng 1000BaseT)

Cáp đồng trục (Coaxial Cable)
+ Cáp đồng trục là loại cáp được chọn lựa cho các mạng nhỏ ít người dùng, giá thành thấp. Có cáp đồng trục gầy (thin coaxial cable) và cáp đồng trục béo (thick coaxial cable)
mmlp.png

+ Cáp đồng trục gầy, ký hiệu RG-58AUm được dùng trong chuẩn mạng Ethernet 10Base2
vvbg.png

+ Cáp đồng trục béo, ký hiệu RG-11, được dùng trong chuẩn mạng 10Base5
Các loại đầu nối được sử dụng với cáp đồng trục gầy là đầu nối chữ T (T connector), đầu nối BNC và thiết bị đầu cuối (Terminator)
ccfg.png

Cáp quang (Fiber Optic)
Cáp quang truyền tải các sóng điện từ dưới dạng ánh sáng. Thực tế, sự xuất hiện của một sóng ánh sáng tương ứng với bit 1 và sự mất ánh sáng tương ứng với bit 0. Các tín hiệu điện tử được chuyển sang tín hiệu ánh sáng bởi bộ phát, sau đó các tín hiệu ánh sáng sẽ được chuyển thành các sung điện tử bởi bộ phận. Nguồn phát quang có thể là các đèn LED (Light Emitting Diode) cổ điển, hay các diod laser. Bộ dò ánh sáng có thể là các tế bào quang điện truyền thống hay các tế bào quang điện dạng khối.
bbnj.png

Sự lan truyền tín hiệu được thực hiện bởi sự phản xạ trên bề mặt, Thực tế, tồn tại 3 loại cáp quang:
+ Chế độ đơn: một tia sáng trên đường truyền tải.
+ Hai chế độ còn lại gọi là chế độ đa: nhiều tia sáng cùng được truyền song song nhau.
uuhj.png

+ Trong chế độ đơn, chiết suất n2>n1. Tia laser có bước sóng từ 5 đến 8 micrometres được tập trung về một hướng. Các sợi loại này cho phép tốc độ bit cao nhưng khó xử lý và phức tạp trong các thao tác nối kết.
+ Chế độ đa không thẩm thấu
Các tia sáng di chuyển bằng cách phản xạ giữa bề mặt của 2 môi trường có chiết suất khác nhau (n2>n1) và mất nhiều thời gian hơn để các sóng di chuyển so với chế độ đơn. Độ suy giảm đường truyền từ 30 dB/km đối với các loại cáp thủy tinh và từ 100 dB/Km đối với loại cáp bằng chất dẽo.
+ Chế độ đa bị thẩm thấu
Chiết suất tăng dần từ trung tâm về vỉ của ống. Vì thế sự phản xạ trong trường hợp này thì rất nhẹ nhàng.
Từ cách đây nhiều năm người ta có thể thực hiện đa hợp trên cùng một sợi quang nhiều thông tin bằng cách dùng các sóng có độ dài khác nhau. kỹ thuật này được gọi là WDM (Wavelength Division Multiplexing).

 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Kênh truyền vô tuyến
Kênh truyền vô tuyến thì thật sự tiện lợi cho tất cả chúng ta, đặc biệt ở những địa hình mà kênh truyền hữu tuyến không thể thực hiện được hoặc phải tốn nhiều chi phí (rừng rậm, hải đảo, miền núi). Kênh truyền hình vô tuyến tải thông tin ở tốc độ ánh sáng.
Gọi :
+ c là tốc độ ánh sáng
+ f là tần số của tín hiệu sóng
+ lambda là độ dài sóng. Khi đó ta có:
c=lambda*f
100773908_269969127719614_4059645990607519744_n.png

Tín hiệu có độ dài sóng càng lớn thì khoảng cách truyền càng xa mà không bị suy giảm, ngược lại những tín hiệu có tần số càng cao thì độ phát tán càng thấp.
Hình 3.15 mô tả phổ của sóng điện từ được dùng cho truyền dữ liệu. Khoảng tần số càng cao càng truyền tải được nhiều thông tin.
Đặc điểm các kênh truyền dữ liệu
Đặc điểm kênh truyền
Phương tiện thường được dùng để truyền tải dữ liệu (các bits 0,1) từ thiết bị truyền đến thiết bị nhận trên một kênh truyền nhận vật lý là các tín hiệu tuần tự hay tín hiệu số.
dfv.png

Truyền tải tín hiệu sóng dạng hình sin
Sóng dạng hình sin, không kết thúc hoặc suy giảm sau một khoảng thời gian là dạng tín hiệu tuần tự đơn giản nhất, dễ dàng tạo ra được. Hơn thế nó còn đặc biệt được chú ý đến bởi yếu tố sau: bất kỳ một dạng tín hiệu nào cũng có thể được biểu diễn lại bằng các sóng hình sin. Yếu tố này được rút ra từ một nghiên cứu cụ thể nó cho phép chúng ta có thể định nghĩa một vài đặc điểm của kênh truyền vật lý.
Xem xét một kênh truyền, giả sử rằng các điểm nối kết là trực tiếp, không có ngắt quảng, được hình thành từ hai sợi kim loại. Một đoạn của kênh truyền được xem như một đèn 4 cực gồm một điện trở R và một tụ điện C
cvbn.png

Tín hiệu hình sin được áp vào giữa các cực (giữa 2 sợi dây) được tính theo biểu thức:
V_in(t) = V_in sin (wt)
Trong đó:
+ V_in: là hiệu điện thế cực đại
+ w: nhịp; f=w/2pi: là tần số;
+ T=2pi/w = 1/f: là chu kỳ.
Tín hiệu đầu ra sẽ là : V_out(t)=V_out sin(wt+F)
+ Với F: là độ trễ pha.
Mức điện thế ngỏ ra tuỳ thuộc vào điện thế ngỏ vào và đặc điểm vật lý của đèn bốn cực.
Các luật trường điện tử chứng minh rằng trong trường hợp đơn giản nhất ta có:
vbnd.png

Ta nhận thấy rằng điện thế ngỏ ra V_out thì yếu hơn điện thế ngỏ vào V_in. Ta nói có một sự giảm thế và một sự lệch pha F giữa hiệu điện thế ngỏ vào và hiệu điện thế ngỏ ra. Nếu ta chồng 2 sóng điện từ thế ngỏ vào và điện thế ngỏ ra trong một sơ đồ thời gian, ta có kết quả như sau:
Cường độ giảm thế Tín hiệu vào Tín hiệu ra Thời gian.
bbn.png

Độ suy giảm trên kênh truyền A của tín hiệu là một tỷ lệ về công suất P_in/P_out của tín hiệu phát P_in và tín hiệu nhận được P_out. Mỗi công suất được tính với đơn vị là watts. Ta biểu diễn độ suy giảm bằng đơn vị decibel
A(w)=10log10(P_in/P_out).
bnk.png

Truyền tín hiệu bất kỳ
Lý thuyết toán Fourrier đã chứng minh rằng bất kỳ một tín hiệu nào cũng có thể xem như được tạo thành từ một tổng của một số hữu hạn hoặc vô hạn các sóng hình sin.
Không đi sâu vào chứng minh ta có kết quả sau:
+ Một tín hiệu bất kỳ x(t) thì có thể phân tích thành một tập hợp các tín hiệu dạng sóng hình sin.
+ Nếu là tín hiệu tuần hoàn, thì ta có thể phân tích nó thành dạng một chuỗi Fourier. Thuật ngữ chuỗi ở đây ý muốn nói đến một loạt các sóng hình sin có tần số khác nhau như là các bội số của tần số tối ưu f0.
+ Nếu tín hiệu không là dạng tuần hoàn, thì ta có thể phân tích nó dưới dạng một bộ Fourier; với các sóng hình sin có tần số rời rạc.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Băng thông của một kênh truyền (Bandwidth)
Bởi vì một tín hiệu bất kỳ có thể được xem như là một sự kết hợp của một chuỗi các sóng hình sin, nên ta có thể xem rằng, sự truyền tải một tín hiệu bất kỳ có thể được xem rằng, sự truyền tải một tín hiệu bất kỳ tương đương với việc truyền tải các sóng hình sin thành phần. Vì tần số của chúng là khác nhau, chúng có thể đến nơi với độ suy giảm là khác nhau, một trong số chúng có thể không còn nhận ra được. Nếu ta định nghĩa một ngưỡng còn "nghe" được A_0, thì tất cả các tín hiệu hình sin có tần số nhỏ hơn f_1 được xem như bị mất. Tương tự các tín hiệu có tần số lớn hơn f_2 cũng được xem là bị mất. Những tín hiệu có thể nhận ra được ở bên nghe là các tín hiệu có tần số nằm giữa f1 và f2. Khoản tần số này được gọi là băng thông của một kênh truyền.
Băng thông WA(db)f
bnmd.png

Nói một cách khác, với một tín hiệu phức tạp bất kỳ, tín hiệu này sẽ truyền tải được nếu như tần số của các sóng hình sin thành phần của nó có tần số nằm trong khoảng băng thông của kênh truyền. Chúng ta cũng nhận thấy rằng, băng thông càng lớn thì càng có nhiều tín hiệu được truyền đến nơi. Chính vì thế chúng ta thường quan tâm đến các kênh truyền có băng thông rộng.
Ví dụ: Độ rộng băng thông của kênh truyền điện thoại là 3100 Hz vì các tín hiệu âm thanh có thể nghe được nằm ở khoảng tần số từ 300Hz đến 3400Hz

Tần số biến điệu và tốc độ dữ liệu (Baund rate và bit rate)
Một thông điệp thì được hình thành từ một chuỗi liên tiếp các tín hiệu số hay tuần tự. Mỗi tín hiệu có độ dài thời gian là t. Các tín hiệu này được lan truyền trên kênh truyền với vận tốc 10^8 m/s trong kênh truyền cáp quang hay 2.10^6 m/s trong kênh kim loại.
Chúng ta thấy rằng tốc độ lan truyền không phải là yếu tố quyết định. Yếu tố quyế định chính là nhịp mà ta đặt tín hiệu lên kênh truyền. Nhịp này được gọi là tần số biến điệu:
R=1/t( đơn vị bauds)
Nếu thông điệp dạng nhị phân, và mỗi tín hiệu chuyển tải n bit, khi đó ta có tốc độ bit được tính như sau:
D=nR (đợn vị là bits/s)
Giá trị này thể hiện nhịp mà ta đưa các bit lên đường truyền.
Ví dụ: Cho hệ thống có R=1200 bauds và D=1200 bit/s. Ta suy ra một tín hiệu cơ bản chỉ chuyển tải một bit.
Một số ví dụ về tần số biến điệu và tốc độ dữ liệu:
Vi dụ 1: Truyền tải các dữ liệu số bằng các tín hiệu tuần tự.
vbgh.png

DTa sử dụng hai kiểu tín hiệu tuần tự , mỗi loại có độ dài sóng D, sóng thứ nhất có tần số f1, sóng thứ hai có tần số f2 (gấp đôi tần số f1). Cả hai tín hiệu đều có thể nhận được ở ngõ ra. Ta quy định rằng tín hiệu thứ nhất truyền bit "0" và tín hiệu thứ hai truyền bit "1". Nhịp được sử dụng để đưa các tín hiệu lên đường truyền bằng với nhịp truyền các bit bởi vì mỗi tín hiệu thì truyền một bit. Sự phân biệt giữa tín hiệu 0 và 1 dựa trên sự khác biệt về tần số của 2 tín hiệu sin. Sự mã hóa này được gọi là biến điệu tần số.
Ví dụ 2: Truyền dữ liệu số bởi các tín hiệu tuần tự.
Trong trường hợp này ta sử dụng 4 loại tín hiệu hình sin lệch pha nhau pi/4. Mỗi loại tín hiệu có thể vận chuyển 2 bits hoặc 00,01,10,11. Với cách thức như thế, tốc độ dữ liệu sẽ gấp đôi tần số biến điệu. Sự phân biệt giữa các tín hiệu trong trường hợp này dựa vào pha của tín hiệu. Ta gọi là biến điệu pha.
Ví dụ 3: Truyền tải các dữ liệu số bằng các tín hiệu số
oyu.png

Ta sử dụng 8 tín hiệu số cùng độ dài nhưng có biên độ khác nhau. Mỗi tín hiệu truyền tải 3 bits bởi chúng có thể đại diện cho 8 sự kết hợp khác nhau của 3 bit. Sự phân biệt giữa các tín hiệu trong trường hợp này dựa vào biên độ của các tín hiệu. Ta gọi là biến điệu biên độ.
Để có được một tốc độ truyền dữ liệu cao nhất, ta tìm cách cái thiện tốc độ bit. Bởi vì D=nR, ta có thể tăng tốc độ bit bằng cách tăng một trong các yếu tố sau đây.
+ Hoặc tăng n (số bit truyền tải bởi một tín hiệu), tuy nhiên nhiễu là một rào cản quan trọng.
+ Hoặc R (tần số biến điệu), tuy nhiên chúng ta cũng không thể vượt qua tần số biến điệu cực đại R max.
Kết quả sau đây đã được chứng minh bởi Nyquist (1928) xác định mối ràng buộc giữa tần số biến điệu cực đại và băng thông của kênh truyền W.
+ R max = 2W,
+ Kết quả này được tính toán trên lý thuyết, trong thực tế thì R max = 1,25 W
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Nhiễu và khả năng kênh truyền
Nhiễu bao gồm các tín hiệu ký sinh chúng chồng lên các tín hiệu được truyền tải và chúng làm cho các tín hiệu này bị biến dạng
vbfd.png


Chúng ta có thể phân biệt thành 3 loại nhiễu:
+ Nhiễu xác định: phụ thuộc vào đặc tính kênh truyền
+ Nhiều không xác định
+ Nhiều trắng từ sự chuyển động của các điện tử
Nhiều phiền toái nhất dĩ nhiên là loại nhiễu không xác định. Chúng có thể làm thay đổi tín hiệu vào những khoảng thời gian nào đó làm cho bên nhận khó phân biệt được đó là bit "0" hay bit "1". Chính vì thế mà công suất của tín hiệu lớn hơn nhiều so với công suất của nhiễu. Tỷ lệ giữa công suất tín hiệu và công suất nhiễu tính theo đơn vị decibel được biểu diễn như sau:
S/B=10log10(P_S(Watt)/P_B(Watt))
Trong đó P_S và P_B là công suất của tín hiệu và công suất của nhiễu
Định lý Shannon (1948) giải thích tầm quan trọng của tỷ lệ S/B trong việc xác định số bit tối đa có thể chuyên chở bởi một tín hiệu như sau:
cde.png

Kết hợp với định lý của Nyquist, ta có thể suy ra tốc độ bit tối đa của một kênh truyền theo công thức sau:
vvc.png

C được gọi là khả năng của kênh truyền, xác định tốc độ bit tối đa có thể chấp nhận được bởi kênh truyền đó.
Ví dụ: Kênh truyền điện thoại có độ rộng băng thông là W=3100 Hz tỷ lệ S/B=20dB. Từ đó ta tính được khả năng của kênh truyền điện thoại là : C=20,6Kbits/s.

Giao thông (Traffic)
Giao thông là một khái niệm liên quan đến sự sử dụng một kênh truyền tin. Giao thông cho phép biết được mức độ sử dụng kênh truyền từ đó có thể chọn một kênh truyền phù hợp với mức độ sử dụng hiện tại.

Để đánh giá giao thông, ta có thể xem một cuộc truyền tải hay một cuộc giao tiếp là một phiên giao dịch (session) với độ dài trung bình là T (đơn vị là giây). Cho N_c là số lượng phiên giao dịch trung bình trên một giờ. Mật độ giao thông E được tính theo biểu thức sau:
E=TN_c/3600

Nói cách khác, mật độ giao thông là đại lượng dùng để đo mức đo sử dụng kênh truyền trong một giây.
Thực tế, khi phân tích kỹ hơn ta thấy rằng trong một phiên giao dịch sẽ chứa nhiều khoảng im lặng (không dùng kênh truyền), ta có thể phân biệt thành 2 loại phiên giao dịch sau:
+ Các phiên giao dịch mà ở đó thời gian sử dụng T được sử dụng hết.
+ Các phiên giao dịch mà ở đó thời gian T có chứa các khoảng im lặng.
Trong trường hợp thứ hai, mật độ giao thông thì không phản ánh đúng mức độ bận rộn thật sự của kênh truyền. Ta tách một phiên giao dịch thành nhiều giao dịch (transaction) với độ dài trung bình là p bít, cách khoảng nhau bởi những khoảng im lặng. Giả sử N_t là số giao dịch trung bình trong một phiên dịch
vgbnd.png

Gọi D là tốc độ bit của kênh truyền, tốc độ bit thật sự d trong trường hợp này là:
vvs.png

và tần suất sử dụng kênh truyền được định nghĩa bởi tỷ số:
rtyu.png

Ví dụ: Trong một tính toán khoa học từ xa, người dùng giao tiếp với máy tính trung tâm. Cho:
+ p=900 bits, N_t=200, T=2700s, N_c=0.8,D=1200b/s.
+ Khi đó:
* Mật độ giao thông trung bình là E=0.6
* Tầng suất sử dụng kênh truyền theta = 0.05
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Các hình thức mã hóa dữ liệu số
Mã hóa đường truyền (Line Coding)

Sau khi số hóa thông tin, vấn đề chúng ta phải quan tâm kế tiếp là cách truyền tải các bit "0" và "1". Ta có thể sử dụng tín hiệu số hoặc tín hiệu tuần tự để truyền tải các bit "0", "1". Công việc này còn được gọi là mã hóa đường truyền (line coding).
Mã hóa đường truyền bằng tín hiệu số
Trong phương pháp này ta sử dụng một tín hiệu số cho bit "0" và một tín hiệu số khác cho bit "1". Có nhiều cách thức để thực hiện điều này. Một số phương pháp mã hóa phổ biến như sau:
+ Mã NZR (Non Return Zero), RZ (Return to Zero), lưỡng cực (bipolar) NRZ và RZ:
ppo.png

Mã hóa đường truyền bằng tín hiệu tuần tự
Thông thường người ta sử dụng một sóng mang hình sin v(t)=Vsin(omega.t+?) để mã hóa đường truyền. Trong đó ta thay đổi một số tham số để thể hiện các bit "0" và "1":
+ Thay đổi V, ta có biến điệu biên độ (Amplitude modulation)
+ Thay đổi omega, ta có biến điệu tần số (Frequency modulation)
+ Thay đổi phi, ta có biến điều pha (Phase modulation)
Bên truyền thực hiện quá trình mã hóa một bit thành tín hiệu tuần tự gọi là biến điệu (modulation). Ngược lại bên nhận, nhận được tín hiệu tuần tự phải giải mã thành một bit, gọi là hoàn điệu (demodulation).
ccvg.png
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Chức năng của tầng liên kết dữ liệu
Chức năng cơ bản của tầng liên kết dữ liệu
Chức năng của tầng liên kết dữ liệu

Tầng liên kết dữ liệu đảm nhận các chức năng sau:
+ Cung cấp một giao diện được định nghĩa chuẩn cho các dịch vụ cung cấp cho tầng mạng
+ Xử lý lỗi đường truyền
+ Điều khiển luồng dữ liệu nhờ đó bên truyền nhanh không làm tràn dữ liệu bên nhận chậm
Các dịch vụ cơ bản của tầng liên kết dữ liệu
Nhiệm vụ của tầng liên kết dữ liệu là cung cấp các dịch vụ cho tầng mạng. Dịch vụ chính của tầng liên kết dữ liệu là truyền tải dữ liệu nhận được từ tầng mạng trên máy gửi đến tầng mạng trên máy nhận.

Để làm được điều này, tầng liên kết dữ liệu lấy các gói tin (Packet) mà nó nhận được từ tầng mạng và gói chúng vào trong các khung (frame) để truyền đi. Mỗi khung chứa phần tiêu đề (Header), thông tin cần truyền đi (Payload field) và thông tin theo dõi khác (Trailer)
vvsa.png

Có 3 dịch vụ cơ bản mà tầng liên kết dữ liệu thường cung cấp là :
+ Dịch vụ không nối kết không báo nhận (unacknowledged connectionless service), thường được sử dụng trong mạng LAN.
+ Dịch vụ không nối kết có báo nhận (acknowledged connection-oriented service), thường dùng trong mạng WANs.

Xử lý lỗi
Để có thể truyền tải được dữ liệu nhận từ tầng mạng đến máy nhận, tầng liên kết dữ liệu phải sử dụng các dịch vụ được cung cấp bởi tầng vật lý. Tất cả những gì tầng vật lý thực hiện là nhận một chuỗi các bits thô và cố gắng truyền chúng đến máy đích. Tầng vật lý không đảm bảo về độ tin cậy của các bits được truyền đi. Số lượng bits đến nơi nhận có thể nhiều, ít, hay bằng số bits đã gửi đi, thậm chí giá trị của chúng cũng có thể khác với giá trị mà chúng đã được gửi đi. Chính vì thế mà tầng liên kết dữ liệu phải dò tìm và xử lý các lỗi trên dữ liệu nhận được.
Định khung
Như đã nói ở phần trên, đơn vị truyền tin của tầng liên kết dữ liệu là các khung. Vấn đề đặt ra là làm sao bên nhận biết được điểm bắt đầu và điểm kết thúc của khung. Chính vì vậy mà tầng liên kết dữ liệu cần thiết phải quy định khuôn dạng của khung mà mình sử dụng. Có 3 phương pháp để định khung phổ biến sau:
+ Đếm ký tự (Character count)
+ Sử dụng các bytes làm cờ hiệu và bytes độn (Flag byte with byte stuffing)
+ Sử dụng cờ bắt đầu và kết thúc khung cùng với các bit độn (Starting and ending flags with bit stuffing)
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Phương pháp đếm ký tự (Character Count)
Phương pháp này sử dụng một trường trong phần tiêu đề để mô tả số lượng các ký tự có trong khung. Bất lợi của phương pháp này là nếu một ký tự đếm của một khung nào đó bị lỗi sẽ làm cho các khung phía sau không thể xác định được. Phương pháp này vì thế mà ít được sử dụng
vgty.png

Phương pháp sử dụng byte làm cờ và các byte độn (Flag byte with byte stuffing)
Phương pháp này sử dụng một byte có giá trị đặc biệt để làm cờ hiệu (flag byte) đánh dấu điểm bắt đầu và kết thúc của khung. Một vấn đề phát sinh trong phương pháp này là, trong dữ liệu có thể chứa byte có giá trị của cờ hiệu. Điều này sẽ làm gẩy khung. Để giải quyết vấn đề này, người ta đưa vào phía trước byte dữ liệu có giá trị của cờ hiệu một byte đặc biệt gọi là byte ESC. Bên nhận khi nhận được byte ESC theo sau là giá trị của cờ hiệu thì sẽ bỏ đi ký tự ESC đồng thời biết đầy chưa phải là điểm kết thúc của khung.
Tương tự, nếu trong dữ liệu có chứa ký tự ESC thì ta cũng đưa thêm vào phía trước nó một ký tự ESC. Kỹ thuật này được gọi là ký tự độn (character stuffing).
oil.png

Yếu điểm của phương pháp này là nó dựa trên ký tự dạng 8 bits vì thế sẽ không sử dụng được trong các hệ thống sử dụng chuẩn mã 16 bits như Unicode chẳng hạn.
Sử dụng cờ bắt đầu và kết thúc khung cùng với các bit độn (Starting and ending flags with bit stuffing).
Phương pháp này sử dụng mẫu bit đặc biệt, 01111110, để làm cờ đánh dấu điểm bắt đầu và kết thúc khung. Khi bên gởi phát hiện có 5 bits 1 liên tiếp trong dữ liệu gửi đi, nó sẽ thên vào bit 0. Ngược lại, nếu bên nhận phát hiện 5 bits liên tiếp và theo sau bằng 1 bit 0, nó sẽ loại bỏ bit 0 ra khỏi dữ liệu. Nhờ thế cờ sẽ không xuất hiện trong gói dữ liệu gửi.
ouy.png

H4.4 (a) Dữ liệu gốc
(b) Dữ liệu chuyển lên đường truyền
(c) Dữ liệu nhận sau khi loại bỏ các bit độn.
Điều khiển lỗi
Một vấn đề khác cần phải xem xét là cách nào để đảm bảo rằng toàn bộ các khung đã được phân phát đến tầng mạng và được phân phát theo đúng trình tự chúng đã được gửi.
Điều này không cần quan tâm trong dịch vụ không kết nối không báo nhận. Tuy nhiên nó cần phải được đảm bảo trong dịch vụ nối kết định hướng.
Cách thường được dùng để đảm bảo việc phân phát tin cậy là cung cấp cho người gửi một vài phản hồi từ người nhận về tình trạng nhận khung. Hệ thống sẽ định nghĩa một khung đặc biệt, gọi là khung báo nhận (acknowledgement), để cho người nhận thông báo cho người gửi tình trạng của dữ liệu nhận là tốt hay xấu. Nếu người gửi nhận được một báo hiệu tốt về gói tin, người gửi an tâm rằng gói tin đã được phân phát một cách an toàn. Ngược lại, một khung báo không nhận (unacknowledgement) báo hiệu rằng có một số vấn đề gì đó đối với khung nhận và nó cần phải được truyền lại.
Một khả năng khác có thể xảy ra là khung gửi đi hoàn toàn bị mất không đến được người nhận. Trong trường hợp này sẽ không có một khung báo nhận nào được gửi về cho người gửi, làm cho người gửi rơi vào trạng thái chờ đợi vĩnh viễn.
Để giải quyết vấn đề này, người ta thêm vào tầng liên kết dữ liệu một bộ đếm thời gian (timer). Khi bên gửi truyền một khung đi, nó sẽ thiết lập bộ đếm thời gian. Bộ đếm thời gian sẽ không còn hiệu lực (time-out) sau một khoảng thời gian đủ lớn để khung được truyền đến người nhận, xử lý ở đó, và khung báo nhận đến được người gửi. Thông thường nếu khung được nhận tốt, khung báo nhận sẽ trở về người gửi trước thời gian qui định. Khi đó bộ đếm thời gian sẽ bị hủy.
Tuy nhiên, nếu khung báo nhận bị mất, bộ đếm thời gian sẽ trôi qua, báo hiệu cho người gửi về vấn đề phát sinh. Giải pháp trong trường hợp này là bên gửi gửi lại khung. Như thế khung được truyền đi nhiều lần có thể làm cho khung được gửi lên tầng mạng nhiều hơn một lần. Để phòng ngừa trường hợp này, người ta gán vào mỗi khung gửi đi một Số thứ tự (sequence number), nhờ đó bên nhận phân biệt được các khung được truyền lại.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Thẻ
mmt
Bên trên