全球旧事资料 分类
龙源期刊网httpwwwqika
comc
LWIP中tcp_write函数的理解
作者:刘光然来源:《新课程中旬》2013年第06期
摘要::LWIP是一款应用与嵌入式领域的开源TCPIP协议栈。在学习代码实现中,学生遇到的第一个大问题就是tcp_write函数,解释了tcp_write函数背后的工作机理。
关键词:LWIP;tcp_write函数;工作机理在一个简单的TCP服务器实现代码中,1pcbtcp_
ew();建立TCP控制块(pcb)2tcp_bi
d(pcb,IP_ADDR_ANY,80);绑定IP和端口号3pcbtcp_liste
(pcb);进入监听状态4tcp_accept(pcb,http_accept);设置回调函数在tcp_accept中调用了tcp_recv函数。5tcp_recv(pcb,http_recv);设置回调函数在http_recv中调用了tcp_write函数。6tcp_writepcb,http_html_hdr,sizeof(http_html_hdr),0;发送http协议头部信息7tcp_writepcb,logi
,sizeof(logi
),0;发送登录网页信息在tcp_write中只是调用了tcp_e
queue函数,构造一个报文段并放在控制块缓冲队列中,并没有立即发送,而是等待数据集中一下然后再发送。那发送是在哪句代码中体现呢?在网络上和书本上,都无法找到明确的解释。
f龙源期刊网httpwwwqika
comc
在mai
函数中调用了LwIP_Periodic_Ha
dle函数,在这个函数中调用了tcp_tmr函数,内部又调用了tcp_slowtmr函数,在这个函数中调用了tcp_output函数。而tcp_output就是发送代码的函数,问题也得以解决。
本文对简单的TCP服务器代码进行分析,解决了tcp_write函数与发送数据之间关系的困惑。
参考文献:
1朱升林嵌入式Li
ux网络那些事M北京:中国水利水电出版社,201209
2刘光然零基础arm裸板编程入门湖北经济学院学报:人文社会科学版,201302
(作者单位湖北省武汉市经济学院电子工程系)
fr
好听全球资料 返回顶部