计算机网络通关整理1-OSI、TCP/IP、Socket、IP地址

网上收集整理,仅供笔记参考学习

计算机网络通关整理1-OSI、TCP/IP、Socket、IP地址

计算机网络通关整理2-TCP、UDP、 三次握手、四次挥手、流量控制、拥塞控制、粘包

计算机网络通关整理3-HTTP、状态码、Cookie、Session、HTTPS、Socket


OSI七层协议模型

OSI, Open System Interconnection Reference Model
开放系统互连参考模型
应用层、表示层、会话层、传输层、网络层、数据链路层、物理层
功能: 提供给开发者一个必须的、通用的概念以便开发完善、可以用来解释连接不同系统的框架。
在这里插入图片描述

1.物理层:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。

2.数据链路层:通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。

3.网络层:是OSI参考模型中最复杂的一层,也是通信子网的最高一层。
通过路由选择算法,为报文或分组通过通信子网选择最适当的路径。该层控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接。

4.传输层:向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输。

5.会话层:用户应用程序和网络之间的接口,向两个实体的表示层提供建立和使用连接的方法。组织和协调两个会话进程之间的通信,并对数据交换进行管理。

6.表示层:处理用户信息的表示问题,如编码、数据格式转换和加密解密

7.应用层:直接向用户提供服务,完成用户希望在网络上完成的各种工作

五层模型

五层模型是OSI和TCP/IP的综合,就是将网络接口层分为数据链路层和物理层
在这里插入图片描述

TCP/IP - 四层模型

TCP/IP 传输控制协议/网际协议
是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议。

在这里插入图片描述

Scoket

Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。 只是使得程序员更方便地使用TCP/IP协议栈而已,是对TCP/IP协议的抽象,从而形成了我们知道的一些最基本的函数接口

转:Socket原理讲解
网络中的进程是通过socket来通信的,socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。我的理解就是Socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)

Scoket是支持TCP/IP协议的网络通信的基本操作单元。必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。
一个Socket是一对IP地址和端口。

Scoket作用

应用层通过传输层进行数据通信时,TCP和UDP会遇到同时为多个应用程序进程提供并发服务的问题。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了称为套接字(Socket)的接口,区分不同应用程序进程间的网络通信和连接。

在这里插入图片描述
在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面。对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。

基本的socket接口函数
socket():用于普通文件的打开操作
bind():把一个地址族中的特定地址赋给socket。
listen():监听这个socket
connect():发出连接请求,服务器端就会接收到这个请求
accept():接收请求,建立连接
read()、write():调用网络I/O进行读写操作
close():只是使相应socket描述字的引用计数-1,只有当引用计数为0的时候,才会触发TCP客户端向服务器发送终止连接请求。

三次握手中Socket调用的函数

在这里插入图片描述
当客户端调用connect时,触发了连接请求,向服务器发送了SYN J包,这时connect进入阻塞状态;服务器监听到连接请求,即收到SYN J包,调用accept函数接收请求向客户端发送SYN K ,ACK J+1,这时accept进入阻塞状态;客户端收到服务器的SYN K ,ACK J+1之后,这时connect返回,并对SYN K进行确认;服务器收到ACK K+1时,accept返回,至此三次握手完毕,连接建立。
在这里插入图片描述

四次挥手中Socket调用的函数

在这里插入图片描述

网络层-IP

私有地址:
A 类:10.0.0.0 到 10.255.255.255
B 类:172.16.0.0 到 172.31.255.255
C 类:192.168.0.0 到 192.168.255.255

猜你喜欢

转载自blog.csdn.net/weixin_45773603/article/details/108114680