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

相关推荐
大霞上仙8 分钟前
Ubuntu系统电脑没有WiFi适配器
linux·运维·电脑
weixin_4426434226 分钟前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
阑梦清川40 分钟前
JavaEE初阶---网络原理(五)---HTTP协议
网络·http·java-ee
Karoku06644 分钟前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
为什么这亚子1 小时前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
半桶水专家1 小时前
用go实现创建WebSocket服务器
服务器·websocket·golang
布值倒区什么name1 小时前
bug日常记录responded with a status of 413 (Request Entity Too Large)
运维·服务器·bug
FeelTouch Labs2 小时前
Netty实现WebSocket Server是否开启压缩深度分析
网络·websocket·网络协议
。puppy2 小时前
HCIP--3实验- 链路聚合,VLAN间通讯,Super VLAN,MSTP,VRRPip配置,OSPF(静态路由,环回,缺省,空接口),NAT
运维·服务器
颇有几分姿色2 小时前
深入理解 Linux 内存管理:free 命令详解
linux·运维·服务器