通信 (通讯)的本质:某种物理信号的传输
通信 (通讯)需要两个最基本的条件:
(1) 物理媒介 (物理层面)
电话线
关纤
......
(2) 协议 (软件层面)
网络协议
1. 网络协议层次模型
层次:模块,在一些大型软件应用中,通常把一些功能做成模块 (模块化)
网络协议 -----> 模块
固定为上一个模块可以调用下一个模块
网络数据到底是如何传输的:
分层传输, 每层实现各自的功能和协议 ,将数据打包交给下一层或者拆包交给上一层处理
OSI (开放式系统互联) 七层模块TCP / IP模型
应用层:
为不同的应用程序提供各种服务和接口。应用层协议实现了在不同主机之间进行数据共享、数据查询和应用执行的功能。网络应用程序工作在TCP/IP模型的应用层,在网络应用程序中我们可以使用协议封装我们需要发送的数据
常用的协议有:HTTP (超文本传输协议)、FTP (文本传输协议)、 Telnet (远程登录协议)、ssh (安全的远程登录协议),DNS (域名解析协议)等
传输层 (TCP和UDP工作在传输层):主要解决数据如何传输的问题。传输层主要提供了两种不同类型的服务:TCP和UDP
TCP:传输层控制协议,是一种面向连接的传输层协议,它能提供高可靠性的通信 (即数据无错误,数据无丢失,数据无失序,数据无重复到达) ---->打电话
=====>建立连接
"三次握手,四次挥手"
"超时重传"
UDP:用户数据报协议,它是不可靠的无连接的协议,因为在数据传输前,不需要进行连接,所有数据传输是不可靠的,传输效率高,应用在 "实时应用",直