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:用于传输音视频的协议(安防监控

相关推荐
HABuo3 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
Howrun7774 小时前
关于Linux服务器的协作问题
linux·运维·服务器
暖馒4 小时前
Modbus应用层协议的深度剖析
网络·网络协议·c#·wpf·智能硬件
yunfuuwqi6 小时前
OpenClaw✅真·喂饭级教程:2026年OpenClaw(原Moltbot)一键部署+接入飞书最佳实践
运维·服务器·网络·人工智能·飞书·京东云
迎仔6 小时前
C-算力中心网络隔离实施方法:怎么搞?
运维·网络
代码游侠6 小时前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
你真是饿了6 小时前
6.库制作与原理
linux·服务器
枷锁—sha7 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Zach_yuan7 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++
AtoposのCX3307 小时前
Docker运行hello-world镜像失败或超时
运维·docker