YOMEDIA
Bài giảng Mạng máy tính (Computer Network): Chương 3 - Lưu Đức Trung
Chia sẻ: Bạch Khinh Dạ Lưu
| Ngày:
| Loại File: DOC
| Số trang:10
30
lượt xem
4
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Bài giảng Mạng máy tính (Computer Network): Chương 3 - Lưu Đức Trung cung cấp đến học viên các kiến thức về cổng và socket; dồn kênh, phân kênh; lập trình socket; tách dữ liệu và checksum;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
AMBIENT/
Chủ đề:
Nội dung Text: Bài giảng Mạng máy tính (Computer Network): Chương 3 - Lưu Đức Trung
- MẠNG MÁY TÍNH (COMPUTER NETWORK)
Chương 3 – Truyền dữ liệu
3.1. Cổng và Socket
Cổng (Port) là một số có giá trị từ 0 đến 65535
Các cổng chuẩn từ 0 đến 1023 (Web, mail, telnet, FTP…)
Không có 2 tiến trình sử dụng chung một số hiệu cổng
Một số cổng thông dụng:
UDP Ports:
0: Reserved
7: Echo
37: Time
42: Name Server
- 53: Domain Name Server
69: TFTP (Trivial File Transfer Protocol)
TCP Ports:
0: Reserved
1: TCP Multiplexer
20: FTP_Data Connection
21: FTP_Command Connection
23: telnet
25: SMTP
42: Name Server
53: Domain Name Server
79: Finger_find a active user
80: HTTP
- Socket: mỗi socket xác định một điểm cuối liên kết truyền thông
2 chiều giữa các tiến trình giao tiếp trên mạng
Stream socket: sử dụng với TCP
Datagram socket: sử dụng với giao thức UDP
Lập trình socket
Phần lớn ứng dụng mạng gồm 2 phía là Client và Server. Hai
phía trao đổi với nhau bằng cách gửi và nhận các thông điệp qua
Socket.
Chương trình phía server chạy và lắng nghe trên một cổng
nào đó để đợi phía client kết nối tới. Nếu mọi việc diễn ra bình
thường (kết nối thành công), cả hai phía đều có hai thể hiện của
lớp Socket và dữ liệu sẽ được truyền qua 2 socket này.
Mở socket bên phía client dùng lớp Socket.
- Mở socket bên phía server dùng lớp ServerSocket
Phía client dùng lớp DataInputStream để nhận thông điệp trả
lời từ server.
Phía server cũng dùng lớp DataInputStream để nhận thông
điệp trả lời từ client.
Phía client dùng lớp PrintStream hoặc DataOutputStream của
java.io để gửi thông điệp cho server.
Phía server dùng lớp PrintStream để gửi thông điệp cho
client.
Đóng kết nối.
Trong mạng Internet hay mạng TCP/IP có hai giao thức ở lớp
vận chuyển là UDP và TCP.
UDP: User Datagram Protocol.
- TCP: Transmission Control Protocol.
UDP: cung cấp dịch vụ truyền không tin cậy, không hướng
nối.
TCP: cung cấp dịch vụ tin cậy, hướng nối cho ứng dụng.
IP: Internet Protocol, là giao thức của lớp mạng
Nhiệm vụ chính của UDP và TCP là mở rộng dịch vụ IP.
Ứng dụng Giao thức lớp ứng Lớp vận chuyển tương
dụng ứng
Email SMTP TCP
Remote Access Telnet TCP
Web HTTP TCP
Truyền file FTP TCP
File Server NFS UDP
Đa phương Do hãng sản xuất UDP
- tiện
Điện thoại qua Do hãng sản xuất UDP
Internet
Quản lý mạng SNMP UDP
Định tuyến RIP UDP
Tên miền DNS UDP
3.2. Dồn kênh, phân kênh (Multiplexing,
Demultiplexing)
Dồn kênh tại host gửi
Thu thập dữ liệu từ các socket, đóng gói dữ liệu bởi header
(sau đó sẽ dùng để phân kênh)
Phân kênh tại host nhận:
- Chuyển các segment đã nhận tới đúng socket
Gửi: Dồn kênh: Nhận dữ liệu từ các tiến trình lớp ứng dụng
khác nhau (qua Socket), đóng gói theo các giao thức của lớp vận
chuyển.
- Nhận: Phân kênh: Sử dụng thông tin trên tiêu đề để gửi dữ liệu
tới đúng socket.
Mỗi liên kết tạo ra trên tầng giao vận để vận chuyển dữ liệu
cho tiến trình ứng dụng của 2 nút mạng được xác định bởi 5 bộ
thông số:
Địa chỉ nguồn (lớp mạng)
Địa chỉ đích (lớp mạng)
Số hiệu cổng nguồn (lớp vận chuyển)
Số hiệu cổng đích (lớp vận chuyển)
Giao thức (TCP/UDP...)
Nút mạng nhận gói tin IP với các thông số
Địa chỉ IP nguồn
Địa chỉ IP đích
- Số hiệu cổng nguồn
Số hiệu cổng đích
Địa chỉ IP và số hiệu cổng sẽ được sử dụng để xác định socket
nhận dữ liệu
Checksum
Phát hiện lỗi trong các bản tin/gói tin
Gửi: (nguyên lý chung)
Chia dữ liệu thành các phần có kích thước n bits
Tính tổng các phần. Nếu kết quả tràn quá n bits, cộng các bit
tràn vào đầu kết quả
Đảo bit kết quả cuối cùng được checksum
Truyền checksum kèm theo dữ liệu
Nhận :
- Tách dữ liệu và checksum
Chia dữ liệu thành các phần có kích thước n bits
Tính tổng các phần và checksum. Nếu kết quả tràn quá n bit,
cộng các bit tràn vào phần kết quả.
Nếu kết quả cuối xuất hiện bit 0=>dữ liệu bị lỗi
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
ERROR:connection to 10.20.1.98:9315 failed (errno=111, msg=Connection refused)
ERROR:connection to 10.20.1.98:9315 failed (errno=111, msg=Connection refused)
Đang xử lý...