计算机网络

TCP/IP四层模型: 将OSI(open systems interconnection model)的七层模型合并为四层

  • 网络接口层 : 负责数据的物理传输
  • 互联网层 : 负责路由的选择,,使用的协议是IP (internet protocol)
  • 传输层: 端到端的通信,,使用的协议是TCP,或者UDP
  • 应用层: 负责处理具体的应用请求,,如HTTP,FTP,DNS等

传输层提供了一系列 socket api,,应用实在建立了有效的socket之后,在socket之上,收和发,,

tcp的socket建立:

  • 建立一个welcome socket
  • 调用bind()方法,将 welcome sokcet和本地的ip,端口绑定
  • 绑定ip和端口,是为了监听客户端是否需要建立连接,,等待客户端建立连接
  • 建立连接之后会产生一个 client socket用来数据交互

网络层提供的服务可能 丢失,乱序,延迟,出错,,传输层向上提供的服务可以是tcp可靠的服务,,tcp上面有ssl,可以加强他的安全性


tcp的传输:

  • tcp协议会将要传输的数据分段(segment),segment的头部会携带端口,,封装之后,交给下层网络层,网络层是主机到主机,,会在头部拼接上ip地址

UDP: user datagram protocol

  • 进程到进程,,尽力而为,报文可能丢失,可能乱序,两个进程之间不需要握手,,常用于 实时流媒体,,或者是 一次往返搞定的应用(因为建立连接麻烦)
  • udp不用握手,头部比较小(8个字节的头部),,,但是不可靠,,如果需要可靠的服务,,只能在应用层自己写

UDP传输数据校验:

  • 发送方:
    1. 将数据(数据+头部+为头部) 按照16位分组,,进行二进制加法,,并执行进位回滚,,
    2. 这个进位回滚的值,,取反码,,,
    3. 将这个反码作为 校验和,,填入udp报头的校验和字段,然后发送整个数据包
  • 接收方:
    1. 将收到的所有内容(包括伪头部,udp头部,数据,以及发送方填好的校验和字段),按照16位分组,,
    2. 将这些所有分组进行二进制加法,,(接收方会将所有字段加在一起,,并且加法的过程是按反码加法进行的,,所以只需要加起来判断是否是全1就行),,,接收方的加法操作是反码加法,这意味这他在加法过程中会遵循反码加法规则,也就是说结果超出了16位,他会把高位丢掉,,加到低位
    3. 如果全1,表示数据传输无误,,如果不全1,,说明数据在传输过程中出现错误

发送方和接收方使用的都是 反码加法 : 他们都会把高位丢掉,补到低位,,所以接收方直接求和,,如果是全1,,数据就是正确的


名词

  • welcome sokcet : 用于等待客户端的连接请求,负责监听和接收客户端连接

  • client socket : 与客户端建立连接之后的套接字,用于和客户端进行通讯,,与客户端进行数据交换

  • 复用: 复用是 "发送数据" 的过程,,他将来自不同应用的数据汇集起来,,通过同一个网络接口(网卡)发送出去

  • 解复用: 解复用是 "接收数据" 的过程,,他将来自网络的一条物理链路上传输的混合数据包,,正确的分发到对应的 socket上,,因为在tcp协议上,,操作系统使用源ip,源端口号,目标ip,目标端口这四个组成的四元组,,作为一个唯一的标识符,可以通过这个找到对应的进程,将数据发送给进程

  • 进位回滚:

  • 校验和: 一种简单的错误检测机制,,可以进行数据完整性检查,,但也可能出现巧合的错误

  • 反码加法 : 是一种特殊的加法方式,他的特点是进位回滚,将进位部分丢弃,并加回到低位

相关推荐
树℡独1 小时前
ns-3仿真之应用层(五)
服务器·网络·tcp/ip·ns3
zhang133830890752 小时前
CG-09H 超声波风速风向传感器 加热型 ABS材质 重量轻 没有机械部件
大数据·运维·网络·人工智能·自动化
酣大智3 小时前
接口模式参数
运维·网络·网络协议·tcp/ip
24zhgjx-lxq4 小时前
华为ensp:MSTP
网络·安全·华为·hcip·ensp
ling___xi4 小时前
《计算机网络》计网3小时期末速成课各版本教程都可用谢稀仁湖科大版都可用_哔哩哔哩_bilibili(笔记)
网络·笔记·计算机网络
REDcker4 小时前
Linux 文件描述符与 Socket 选项操作详解
linux·运维·网络
Up九五小庞5 小时前
用arpspoof实现100%批量切断192.168.110.10 - 192.168.110.100 断网(双向欺骗)--九五小庞
网络·开源
躺柒5 小时前
读数字时代的网络风险管理:策略、计划与执行04风险指引体系
大数据·网络·信息安全·数字化·网络管理·网络风险管理
独角鲸网络安全实验室5 小时前
本地信任成“致命漏洞”:数千Clawdbot Agent公网裸奔,供应链与内网安全告急
网络·网关·安全·php·漏洞·clawdbot·信任机制漏洞
ai_xiaogui5 小时前
Tailscale实现家庭与公司网络双向通信教程:子网路由配置详解
网络·tailscale·双向通信·子网路由配置详解·tailscale双向互访