Nhận gúi tin mạng trong nhõn Linu

Một phần của tài liệu đề tài phần mềm bảo mật mạng dùng giao thức ip quyển 4a các phần mềm bảo mật gói ip trên hệ điều hành linux (Trang 110 - 111)

Ở phần trờn chỳng ta đó khảo sỏt cỏch tạo ra giao diện mạng ảo để gửi gúi tin đi

trong nhõn Linux. Ở phần này chỳng ta sẽ đề cập tới vấn đề nhận gúi tin gửi đến trong nhõn Linux như thế nào. Như chỳng ta đó biết, quỏ trỡnh nhận gúi tin sẽ được thực hiện từ dưới lờn trờn theo mụ hỡnh tầng mạng. Đầu tiờn giao diện vật lý sẽ

thực hiện nhận gúi tin. Sau đú gúi tin được chuyển lờn cho tầng liờn kết dữ liệu (data link) và tiếp đến là tầng IP (nếu họ giao thức chỳng ta dựng là TCP/IP) ... Ở mỗi tầng thỡ nhõn Linux cung cấp cỏc hàm xử lý gúi tin khỏc nhau. Khi lờn ở tầng cao hơn thỡ phần thụng tin header của tầng mạng dưới bị loại bỏ.

Một điều đặc biệt thỳ vị là khi nhận gúi tin ở giao diện vật lý, Linux cung cấp giải phỏp xử lý gúi tin tuỳ thuộc vào chỉ số giao thức gúi tin được gửi. Cấu trỳc struct inet_protocol trong file include/net/protocol.h chứa chỉ số giao thức của gúi tin và cỏc hàm xử lý đối với gúi tin cú giao thức này:

/* This is used to register protocols. */ struct inet_protocol

{

int (*handler)(struct sk_buff *skb, unsigned short len); void (*err_handler)(struct sk_buff *skb, unsigned char *dp, int len);

struct inet_protocol *next; unsigned char protocol; unsigned char copy:1;

const char *name; };

Trong cấu trỳc trờn thỡ trường unsigned char protocol chớnh là trường chứa giao thức của gúi tin cần xử lý, cũn con trỏ hàm int (*handler)(struct sk_buff *skb, unsignecd short len) là hàm xử lý gúi tin cú chỉ số giao thức là protocol.

Nhõn Linux hỗ trợ hàm void inet_add_protocol(struct inet_protocol *proto) để

đăng ký một cấu trỳc inet_protocol đó được khởi tạo vào nhõn, và việc loại bỏ cấu

trỳc inet_protocol đó cú sẵn trong nhõn được thực hiện bởi hàm inet_del_protocol(struct inet_protocol *proto).

Như vậy, trong chương này chỳng ta đó khảo sỏt xong cỏc kỹ thuật gửi và nhận gúi tin được thực hiện trong nhõn Linux. Trong chương II chỳng ta sẽ xem xột giải phỏp can thiệp cụ thể trong việc gửi và nhận gúi tin của phần mềm IP-Crypto.

Một phần của tài liệu đề tài phần mềm bảo mật mạng dùng giao thức ip quyển 4a các phần mềm bảo mật gói ip trên hệ điều hành linux (Trang 110 - 111)