码迷,mamicode.com
首页 > 其他好文 > 详细

网络编程基础(02)

时间:2020-06-27 15:56:42      阅读:67      评论:0      收藏:0      [点我收藏+]

标签:以太网   它的   网络   div   数据报   flag   src   核数   图片   

应用编程接口
常用的API 是 socket和TLI 接口
描述符
socket 的返回值是一个描述符,用描述符调用read () ,write (),可以dup复制,在调用fork后,父进程和子进程都可共享,可以调用FCNT1改变属性,在进程调用时,被内核创建的数据结构
描述符和内核数据结构的关系
技术图片

 

 

 
UNIX的描述符和数据结构的关系图 
 技术图片

 

 

 
理解内核数据结构调用
需要理解链表和双重链表的操作,指针数组,以及指针结构体
理解各个结构体的成员变量,和索引的关系
TCP socket编程的流程图
技术图片

 

 

MBUF输出处理
技术图片
 技术图片

 

 

mbuf 的前 20个字节是首部,20字节的首部,包含了4个四字节段和2 个两字节段总长128个字节
m_next和 m_next pkt是空指针,它是个独立的mbuf
m-data 指向mbuf数据中的第一个字节 ,m_len 指的它的长度
m_type指的包含在mbuf中的数据类型
m_flags 为0
技术图片

 

 

 
技术图片
IP输出
ip的输出填写ip首部中剩余的字段,包括ip检验和,确保数据报发送到那个输出的接口(路由功能)
假设输出的是以太网的接口,将mbuf 链表的指针作为参数,调用一个通用的以太网的输出函数
 
UDP输出
 
技术图片

 

 

技术图片
网络输入和输出的进程通信
技术图片

 

 

技术图片
 
源代码组织目录
技术图片

 

 

 
技术图片
 

网络编程基础(02)

标签:以太网   它的   网络   div   数据报   flag   src   核数   图片   

原文地址:https://www.cnblogs.com/laochaia/p/13198424.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!