网络五层
Posted max404
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络五层相关的知识,希望对你有一定的参考价值。
# --> 1.架构 C/B B/S 客户端 <——————> 服务器 client <——————> server 浏览器 <——————> 服务器 browser <——————> server 学习socket编程就是要编写一个客户端软件和服务端软件 然后实现服务端与客户端基于网络通信 2.什么是网络 1.物理连接介质 2.互联网协议,相当于一套网络通用语言 互联网协议就是一套标准 OSI 5层 应用层(HTTP,FTP协议) 传输层(端口协议):cmd 查端口号命令 netstat -ano -------------------------------- </TCP> </UDP> 基于端口工作的协议 TCP协议 可靠(流式)协议 : Transmission Control Protocol 传输控制协议 特性:将数据量小并且时间间隔短的数据,一次性打包发送 可靠性:TCP传输数据,必须得到回复,才会删掉内存数据,否则间断发送 -------------------------------- <三连:建立连接> 1.请求连接 C -->> S 2.回复请求 C <<-- S s回复连接 2.请求连接 C <<-- S s请求连接 3.连接建立 C -->> S -------------------------------- syn : 同步 synchronizing :同步 syn chro ni zing ack : 确认 Acknowledgement:确认 Ack now ledge ment -------------------------------- c(syn = n) -->> s c <<-- s(ack = n + 1) c <<-- s(syn = k) c(ack = k + 1) -->> s -------------------------------- <四分:断开连接> 1.请求断开 C -->> S 2.回复请求 C <<-- S 2+3 CS双端都有查看剩余信息的操作 3.请求断开 C <<-- S 2+3 不能合并位 4.回复请求 C -->> S -------------------------------- * ->给对方发消息,对方必须回复确认收到传输的数据才会被删除, 否则会在一定时间间隔之内反复发送直到对方接收或者超时 -------------------------------- </UDP> 数据报协议 : User Datagram Protocol 用户数据包协议 Ex: QQ 无需建立双向连接,并且传输数据不可靠,可能会出现丢包的情况 通信速度比较快,但是发送的数据不会在内存中保留 端口(port):唯一标识一台计算机上某一个基于网络通信的应用程序 端口范围:0~65535 (动态分配) 注意:0~1024 通常是归操作系统分配的端口号 通常情况下,端口号写在8000之后 flask 框架 5000 django 框架 8000 mysql 数据库 3306 redis 数据库 6379 注意:一台计算机上同一时间一个端口号,只能被一个应用程序占用 IP 地址:唯一标识全世界接入互联网的独一无二的机器 port 端口号:唯一标识一台计算机上的某一个应用程序 ip + port:能够唯一标识全世界上独一无二的一台计算机上的某一个应用程序 arp 协议:根据 ip 地址解析 mac 地址 网络层: </ip协议> ip协议可跨局域网传输 1.规定计算机必须有一个ip地址 id地址特点:点分十进制 ipv4 / ipv6 兼容更多计算机 0.0.0.0 255.255.255.255 2.ip协议可跨局域网传输 3.ip地址能够标识互联网中独一无二的一台机器 数据链路层: </以太网协议> 局域网 1.规定电信号的分组方式 2.只要是接入物联网的计算机,都必须有一块网卡 网卡有唯一编号-mac地址 长度48位2制,通常12位16制 (前6厂,后6流水线) 物理连接层: 二进制传输,电信号原理高低电平0101 以太网协议: head 头18 字节 发送者/源地址,6个字节 接收者/目标地址,6个字节 数据类型,6个字节
以上是关于网络五层的主要内容,如果未能解决你的问题,请参考以下文章