文章目录
- 情景带入
- 一些基本概念
- 网络
- 网络编程:
- 7层网络模型OSI:
- TCP/IP Protocol Architecture Layers与OSI的对应关系
- Socket
- Client-Server Application
- 报文段:
- 传输协议:
- Mac地址
- IP地址
- 端口
- URL
情景带入
随着时代的发展,我们已经迈入计算机网络时代,身为一个程序猿,我们需要对计算机网络的一些基本概念进行了解。
一些基本概念
网络
在计算机领域中,网络是信息传输,接收,共享的虚拟平台。
网络编程:
从大的方面说就是对信息的发送到接收。
通过操作相应API调度计算机硬件资源,并利用传输管道(网线)进行数据交换的操作。
更为具体的涉及:网络模型,套接字(和某个特定的端口绑定),数据包。
7层网络模型OSI:
基础层:物理层(Physical),数据链路层(Datalink),网络层传输层(Transport).
传输层(Transport):TCP-UDP协议层,Socket.
高级层:会话层(Session),表示层(Presentation),应用层(Application).
TCP/IP Protocol Architecture Layers与OSI的对应关系
(OSI)会话层(Session),表示层(Presentation),应用层(Application).属于(TCP/IP)应用层,包含Telnet,FTP,SMTP,DNS,RIP,
SNMP 下面一一对应。
传输层(Transport)属于传输层,包含TCP,UDP.
网络层(Transport)属于网络层,包含ARP,IGMP,ICMP,IP
物理层(Physical),数据链路层(Datalink)属于网络接口层,包含Ethernet,TokenRing,FrameRelay,ATM
Socket
(1).意义:
简单来说是IP地址与端口的结合协议(EFC 793)
一种地址与端口的结合描述协议
TCP/IP协议的相关API的总称;是网络API的集合实现
涵盖了:Stream Socket/Dategram Socket
(2).作用与组成:
在网络传输中用于唯一标识两个端点之间的链接。
端点:包括IP+Port。
4个要素:客户端地址,客户端端口,服务器地址,服务器端口。
(3).Socket中TCP(有反馈)
TCP是面向连接的通信协议
通过三次握手建立连接,通讯时要拆除连接。
建立起一个TCP连接需要经过“三次握手”:第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务
器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端
和服务器进入ESTABLISHED状态,完成三次握手。
由于TCP是面向连接的所以只能用于端到端的通讯。
(4).Socket中UDP(无反馈)
UDP是面向无连接的通讯协议
UDP数据目的端口号和源端口号信息
由于通讯不需要连接,所以可实现广播发送,并不局限于端到端。
Client-Server Application
TCP/IP协议中,其进程间通信的主要模式:CS模型。
主要目的:协同网络中的计算机资源,服务模式,进程间数据共享
常见的:FTP,SMTP,HTTP
报文段:
报文段是指TCP/IP协议网络传输过程中,起着路由导航的作用
用以查询各个网络路由网段,IP地址,交换协议等IP数据包
报文段充当整个TCP/IP协议数据包的导航路由功能
报文在传输过程中会不断地封装成分组,包,帧来传输
封装方式就是添加一些控制信息组成的首部,即报文头
传输协议:
协议顾名思义,一种规定,约束
约定大于配置,在网络传输中依然适用;网络的传输流程是健壮的稳定的,得益于基础的协议构成
简单来说:A->B的传输数据,B能识别,反之B->A的传输数据A也能识别,这就是协议
Mac地址
Media Access Control或者Medium Access Control
意为媒体访问地址,或称物理地址,硬件地址
用来定义网络设备上的位置,说白了就是比如电脑,路由器上标明的地址就是其在网络中的地址
IP地址
互联网协议地址(网际协议地址)
是分配给网络上使用网际协议(Internet Protocol,IP)的设备的数字标签
常见的IP地址分为IPv4与IPv6两大类
IP地址由32位二进制数组成,常以XXX.XXX.XXX.XXX形式表现,每组XXX代表小于或等于255的10进制数
分为A,B,C,D,E五大类,其中E类属于特殊保留地址
如果主机号全是1,那么这个地址为直接广播地址
IP地址255.255.255.255为受限广播地址
IPv6: 由两个逻辑部分组成,一个64位的网络前缀和一个64位的主机地址,主机地址通常根据物理地址自动生成,叫做EUI-64
IPv4转换成IPv6一定可行,IPv6转换成IPv4不一定可行
端口
0到1023号端口以及1024到49151都是特殊端口
49152到65535号端口属于"动态端口"范围,没有端口可以被正式地注册占用
端口号一共有65536个
URL
URL 是统一资源定位符(Uniform Resource Locator)的简称,它表示 Internet 上某一资源的地址。通过 URL 用户可以访问各种网络资源,
比如常见的 WWW 以及 FTP 站点。浏览器可以通过解析给定的 URL 在网络上查找相应的文件或其他资源。
一个完整的URL的组成由于:通信协议(scheme)、主机(host)、端口号(port)、路径(path)、查询(query)、信息片段(fragment)
组成