- HLEN: Chiều dài của đầu IP Không phải tất cả các trờng trong phần đầu đều đợc sử dụng Trờng đo bằng đơn vị từ 32 bit Đầu IP ngắn nhất là 20 bytes Nó
A.1.4.1 Giao thức TCP
TCP là một giao thức "Có liên kết", nghỉa là cần phải thiết lập liên kết logic giữa một cặp thực thể TCP trớc khi chúng trao đổi dữ liệu với nhau.
Khuôn dạng của TCP header đợc mô tả trong Hình A.5.
Hình A.5 Khuôn dạng của TCP header Các tham số trong khuôn dạng trên có ý nghĩa nh sau: - Source Port: số hiệu cổng của trạm nguồn.
- Destination Port: số hiệu cổng của trạm đích.
Sequence Number: số hiệu của byte đầu tiên của segment trừ khi bit SYN đợc thiết lập. Nếu bít SYN đợc thiết lập thì Sequence Number là số hiệu tuần tự khởi đầu (ISN) và byte dữ liệu đầu tiên là ISN+1. Tham số này có vai trò nh tham số N(S) trong HDLC.
- Acknowledgement Number: số hiệu của segment tiếp theo mà trạm nguồn đang chờ để nhận, ngầm ý báo nhận tốt các segment mà trạm đích đã gửi cho trạm nguồn. Tham số này có vai trò nh tham số N(R) trong HDLC.
- Data offset: số lợng từ (32 bít) trong TCP header. - Reserved: dành để dùng trong tơng lai.
- Control bit: các bít điều khiển: - URG: vùng trỏ khẩn có hiệu lực.
- ACK: vùng báo nhận có hiệu lực. - PSH: chức năng PUSH.
- RST: khởi động lại liên kết.
- SYN: đồng bộ hoá các số hiệu tuần tự. - FIN: không còn dữ liệu từ trạm nguồn.
- Window: cấp phát credit để kiểm soát luồng dữ liệu. Đây chính là số lợng các byte dữ liệu, bắt đầu từ byte đợc chỉ ra trong vùng ACK number mà trạm nguồn đã sẵn sàng để nhận.
- Checksum: mã kiểm soát lỗi cho toàn bộ segment.
- Urgent Pointer: con trỏ này trỏ tới số hiệu tuần tự của byte đi theo sau dữ liệu khẩn, cho phép bên nhận biết đợc độ dài của dữ liệu khẩn. Vùng này chỉ có hiệu lực khi bit URG đợc thiết lập.
- Options: khai báo các Options của TCP, trong đó có độ dài tối đa của vùng TCP data trong một segment.
- Padding: phần chèn thêm vào header để bảo đảm phần header luôn kết thúc ở một mốc 32 bít. Phần thêm này gồm toàn số 0.
- TCP data: (độ dài thay đổi) chứa dữ liệu của tầng trên, có độ dài tối đa ngầm định là 536 bytes. Giá trị này có thể điều chỉnh bằng cách khai báo trong vùng Options.
Một tiến trình ứng dụng trong một host truy nhập vào các dịch vụ của TCP cung cấp thông qua một cổng. Một cổng kết hợp với một địa chỉ IP tạo thành một socket duy nhất trong liên mạng. Dịch vụ TCP đợc cung cấp nhờ một liên kết lôgic giữa một cặp socket. Một socket có thể tham gia nhiều liên kết với các socket ở xa khác nhau. Trớc khi truyền dữ liệu giữa 2 trạm cần phải thiết lập một liên kết TCP giữa chúng và khi không còn nhu cầu truyền dữ liệu thì liên kết đó đợc giải phóng. Cũng nh ở các giao thức khác, các thực thể ở tầng trên sử dụng TCP thông qua các hàm dịch vụ nguyên thuỷ.