linux网络编程

1.网络基础

网络的体系结构,有两类非常重要的体系结构:OSI和 TCP/IP。

OSI模型

相关的协议已经很少使用,但模型本身非常通用 OSI模型是一个理想化的模型,尚未有完整的

实现 OSI模型共有七层 二层交换机,三层交换机

TCP/IP协议族体系

TCP/IP协议族体系是Internet事实上的工业标准。 一共有四层

应用层: Relnet,FTP,HTTP,DNS,SMTP等

传输层: TCP和UDP 网络层 IP,ICMP和IGMP,端到端传输

网络接口和物理层; 以太网,令牌环网,FDDI,wifi,gps/2G/3G/4G,驱动(屏蔽硬件差异)

网络各层的协议解释
1.网络接口和物理层

mac地址:48位全球唯一,网络设备的身份标识

2.网络层

ARP:地址解析协议,IP地址找到mac地址

RARP:mac地址--找到IP地址

PPP协议:拨号协议(GPRS/3G/4G)

IP地址 IP协议:Internet protocol(分为IPv4和IPv6)

ICMP:Internet控制管理协议,Ping 命令属于ICMP

IGMP:Internet分组管理协议,广播和组播

3.传输层
TCP:(Transfer Control protocol,传输控制协议)

提供面向连接的,一对一的可靠传输的协议 数据无误,数据不丢失,数据无失序 适用场景 适合对传输质量要求较高,以及传输大量数据的通信 在需要可靠数据传输的场合,通常适用TCP协议 MSN/QQ等即时通讯软件的用户登录账号管理相关的功能通常采用TCP协议

UDP:(user Datagram Protocol,用户数据报协议)

提供不可靠,无连接的传输协议 适用场景 发送小尺寸数据(如对DNS服务器进行IP地址查询时) 在接收数据,给出应答较困难的网络中适用UDP(如无线网络) 适合于广播/组播式通信中 MSN/QQ/Skype等即时通讯软件的点对点文本通讯以及音视频通常采用UDP协议 流媒体,VOD,VoIP,IPTV等网络多媒体服务中通常采用UDP方式进行实时数据传输

SCTP:(Stream Control Transmission Protocol:流控制传输协议)

TCP的增强版,他能实现多主机, 多链路的通信。

4.应用层

网页访问协议:

HTTP/HTTPS 邮件发送接收协议:
POP3(收)/SMTP(发),
IMAP(可接受邮件的一部分)
FTP:文件传输协议
Telnet/ssh:远程登录
嵌入式相关

NTP:网络时钟协议

SNMP:简单网络管理协议(实现对网络涉及集中式管理)

RTP/RSTP:用于传输音视频的协议(安防监控

相关推荐
王大傻09281 小时前
堆叠注入(Stacked Queries Injection)详解:原理、利用与防御
服务器·网络·数据库·web安全·网络安全
艾芯微科技1 小时前
钰泰 ETA5055V330DD1E|SOT-223 3.3V LDO,低压差、大电流线性稳压选型分享
网络·单片机·嵌入式硬件·集成测试·51单片机
bigcarp1 小时前
安卓模拟器MUMU+tcpdump抓包Socket协议流量
服务器·网络·tcpdump
是个西兰花1 小时前
TCP套接字编程实战:从服务器搭建到多进程处理
服务器·网络协议·tcp/ip
zhangzeyuaaa1 小时前
Ruby `require` 完全指南:从 `$LOAD_PATH` 到 `require_relative`
服务器·前端·ruby
fengkai45452 小时前
十二、Redis -1
运维·数据库·redis
甜到心里的蛋糕2 小时前
Playwright 无头浏览器自动发布 CSDN 图文草稿的实践(持久化 profile + 图床直传)
运维·python·playwright·爬虫自动化·博客运营
懂点Tech2 小时前
ctfshow MISC入门图片篇(信息附加):misc11解题思路
网络
charliejohn3 小时前
计算机考研 408 网络 Http协议综合题
网络
fei_sun3 小时前
RIB、FIB、MAC 、ARP 表
服务器·网络·macos