
从零开始学嵌入式-8.网络编程开发及实战(上)
文章平均质量分 65
网络编程开发及实战(上)
Jing's secret
头发少,样子老,背个双肩包像沙雕
展开
-
8.13 UNIX域套接字
UNIX 域流式套接字客户端流程如下。(1)创建 UNIX 域流式套接字。(2)指定服务器端地址(套接字文件)。(4)发送/接收数据。UNIX 域流式套接字的用法和 TCP 套接字基本一致,区别在于使用的协议和地址不同。UNIX 域用户数据报套接字的流程可参考 UDP 套接字。(1)创建 UNIX 域流式套接字。(1)创建 UNIX 域流式套接字。(2)绑定本地地址(套接字文件)。(2)绑定本地地址(套接字文件)。(4)接收客户端的连接请求。(5)发送/接收数据。(3)发送/接收数据。(3)设置监听模式。原创 2023-06-27 15:13:20 · 674 阅读 · 0 评论 -
8.12 IP协议与ethernet协议
如果在这种覆盖全球的 IP 网的上层使用 TCP 协议,那么就是现在的互联网 (Internet)。当互联网上的主机进行通信时,就好像在一个网络上通信一样,看不见互连的各具体的网络异构细节。原创 2023-06-27 14:56:53 · 313 阅读 · 0 评论 -
8.11 TCP链接管理与UDP协议
发送方 UDP 对应用层交下来的报文,既不合并,也不拆分,按照原样发送。接收方 UDP 对 IP 层交上来的 UDP 用户数据报,去除首部后就原封不动地交付上层的应用进程,一次交付一个完整的报文。采用三报文握手:在客户和服务器之间交换三个 TCP 报文段,以防止已失效的连接请求报文段突然又传送到了,因而产生 TCP 连接建立错误。若发送了 10 个探测报文段(每一个相隔 75 秒)还没有响应,就假定客户出了故障,因而就终止该连接。若服务器过了 2 小时还没有收到客户的信息,它就发送探测报文段。原创 2023-06-27 14:49:52 · 1199 阅读 · 0 评论 -
8.10 TCP是如何实现可靠传输的
A 只要在超时计时器到期之前收到了相应的确认,就撤销该超时计时器,继续发送下一个分组 M2。若 A 在超时计时器规定时间内没有收到 B 的确认,就认为分组错误或丢失,就重发该分组。若 B 所发送的对 M1 的确认丢失了,那么 A 在设定的超时重传时间内将不会收到确认,因此 A 在超时计时器到期后重传 M1。发送窗口:发送方维持一个发送窗口,位于发送窗口内的分组都可被连续发送出去,而不需要等待对方的确认。累积确认:接收方对按序到达的最后一个分组发送确认,表示:到这个分组为止的所有分组都已正确收到了。原创 2023-06-27 14:42:40 · 855 阅读 · 0 评论 -
8.9 实现UDP通信
2. MSG_PEEK:窥视传入的数据。数据被复制到缓冲区中,但不会从输入队列中删除。3. MSG_OOB:处理带外(OOB)数据。2. 后两个参数是通信结构体和结构体的宽度;1. 前四个参数同recv/send一样;前三个参数同read/write一样;原创 2023-06-27 14:24:22 · 217 阅读 · 0 评论 -
8.8 TCP并发实现
【代码】8.8 TCP并发实现。原创 2023-06-27 14:21:32 · 84 阅读 · 0 评论 -
8.7 实现TCP通讯
TCP唯一对应流式套接字,所以选择SOCK_STREAM(数据报套接字:SOCK_DGRAM)流式套接字唯一对应TCP,所以无需要指定协议,设为0即可。-sockfd: 函数socket生成的套接字。-sockfd:socket函数生成的套接字。/*处理客户端发起的连接,生成新的套接字*/-addrlen:地址族结构体的长度。-addrlen:通信结构体的长度。-protocol: 指定协议。-addr:客户端的地址族信息。-type: 指定套接字类型。-addr:通信结构体。原创 2023-06-25 10:58:26 · 719 阅读 · 0 评论 -
8.6 socket套接字及TCP的实现框架
socket套接字目录socket套接字体系结构的两种形式几种常见的网络编程接口socket套接字socket常用API介绍socket套接字三元组【IP地址,端口,协议】地址族结构体套接字类型TCP通信的实现过程体系结构的两种形式网络的体系结构 (Network Architecture) 是计算机网络的各层及其协议的集合,就是这个计算机网络及其构件所应完成的功能的精确定义(不涉及实现)实现 (implementation) 是遵循这种体系结构的原创 2023-06-25 10:42:14 · 680 阅读 · 0 评论 -
8.5 字节序及IP地址转换
字节序是指多字节数据在计算机内存中存储或者网络传输时各字节的存储顺序,分为:大端字节序 (Big endian)小端字节序(Little endian)一般主机当中使用小端字节序网络通信当中必须使用大端字节序。原创 2023-06-21 14:40:46 · 225 阅读 · 0 评论 -
8.4 IP地址与端口号
进程的创建和撤销都是动态的,因此发送方几乎无法识别其他机器上的进程。我们往往需要利用目的主机提供的功能来识别终点,而不需要知道具体实现这个功能的进程是哪一个。有时我们会改换接收报文的进程,但并不需要通知所有的发送方。当一个主机通过两个网卡同时连接到两网络时,也就是该主机同时拥有两个IP地址,该主机被称为多归属主机。0-1023: BSD保留端口,也叫系统端口,这些端口只有系统特许的进程才能使用。UDP 传送的数据单位协议是 UDP 报文或用户数据报。0不使用,1-1023为系统端口,也叫BSD保留端口。原创 2023-06-19 16:47:45 · 468 阅读 · 0 评论 -
8.3 TCP/IP协议与五层体系结构
现在互联网使用的 TCP/IP 体系结构已经发生了演变,即某些应用程序可以直接使用 IP 层,或甚至直接使用最下面的网络接口层。原创 2023-06-19 15:39:53 · 1566 阅读 · 0 评论 -
8.2 网络分层OSI七层模型
网络的体系结构 (Network Architecture) 是计算机网络的各层及其协议的集合,就是这个计算机网络及其构件所应完成的功能的精确定义(不涉及实现)网络协议 (network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。ARPANET 的研制经验表明:对于非常复杂的计算机网络协议,其结构应该是层次式的。1983年,形成了著名的 ISO 7498 国际标准,即七层协议的体系结构。分段和重装:发送端将要发送的数据块划分为更小的单位,在接收端将其还原。原创 2023-06-19 14:44:59 · 507 阅读 · 0 评论 -
8.1 什么是互联网
计算机网络的精确定义并未统一以功能完善的网络软件及通信协议实现资源共享和信息传递的系统以传输信息为基本目的,用通信线路和通信设备将多个计算机连接起来的计算机系统的集合。原创 2023-06-19 14:36:07 · 522 阅读 · 0 评论