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

相关推荐
SoulKuyan3 分钟前
android su执行命令
linux·运维·服务器
zz-zjx7 分钟前
LVS/IPVS与Keepalived在云原生环境中的深度学习与实践(一)
运维·lvs
一叶飘零_sweeeet25 分钟前
Linux 安装 Elasticsearch:避坑指南 + 性能调优实战
linux·运维·elasticsearch
网络精创大傻28 分钟前
Terminator SSH 管理器 — 一款适用于 Terminator 的精美 SSH 连接插件
运维·ssh
运维_攻城狮40 分钟前
Nexus 3.x 私服搭建与运维完全指南(Maven 实战)
java·运维·maven
梁正雄44 分钟前
linux-shell-基础与变量和运算符-1
linux·运维
意疏1 小时前
《金仓KingbaseES vs 达梦DM:从迁移到运维的全维度TCO实测对比》
运维
shawnyz1 小时前
rhcse----DNS
运维·服务器
☆璇1 小时前
【Linux】Reactor反应堆模式
linux·运维·服务器·网络
七七七七071 小时前
【计算机网络】UDP协议深度解析:从报文结构到可靠性设计
服务器·网络·网络协议·计算机网络·算法·udp