嵌入式网络编程-自学篇

编程知识 行业动态 更新时间:2024-06-13 00:22:16

from : http://wwwblogs/miosec/archive/2013/02/12/2910225.html

<一>

目的:想在路由器里做一个自动判断网络连接类型的功能

方法:学习参考embeddedLinux-10.pdf

涉及知识点:web、c

其他:这个芝麻大的功能居然有人申请专利了…专利号:APN/CN201110196988.X

 

正文:

Socket编程

1.函数说明

进行socket编程的基本函数有socket、bind、listen、accept、send、sendto、recv、recvform这几个,其中对于Client和Server以及TCP、UDP操作流程都是有区别的。我们先对函数进行生命,再给出不同情况下实用的流程图。

socket 该函数用于建立一个socket连接,可指定socket类型等信息。在建立了连接之后,可对sockadd后sockaddr_in进行初始化,以保存所建立的socket信息。

 

connect 该函数用于将本地IP地址绑定端口号,若绑定其他地址则不能成功,另外他主要用于tcp的连接,而在UDP的连接中则无必要。

 

send和recv 这两个函数用于接收和发送数据,用在TCP及UDP皆可。用在UDP时,可以在connect函数建立连接之后再用。

 

sendto和recvfrom 这两个函数的作用与send和recv函数类似,可以用在TCP和UDP中皆可。当用在TCP时,后面的几个地址有关参数不起作用,函数作用等同于send和recv。当用在UDP时,可以用在之前没有使用connect的情况时,这两个函数可以自动寻找指定地址并进行连接。(本博文作者注:如广播地址收发?)

服务器端和客户端使用TCP协议的流程如图如下所示

              

服务器端和客户端使用UDP协议的流程如图如下所示


更多推荐

嵌入式网络编程-自学篇

本文发布于:2023-04-02 02:51:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/5547e28d7af486cb9a1857814c255597.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:嵌入式   网络编程

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!