第12章 网络基础(1)_网络分层和TCP/IP协议族
1. 协议的概念
(1)计算机网络中实现通信必须有一些约定。如对速率、传输代码、代码结构、传输控制步骤和出错控制等约定,这些约定即被称为通信协议
(2)在两个节点之间要成功地进行通信,两个节点之间必须约定使用共同的“语言”,这些被通信各方共同遵守的约定、语言、规则被称为协议
(3)在Internet中,最为通用的网络协议是TCP/IP协议。
2. 网络分层模型

(1)应用层:提供用户接口,特指能够发起网络通信的应用程序,如客户端程序、QQ、MSN、浏览器等,服务器程序有Web服务器、邮件服务器、流媒体服务器等。
(2)表示层:使用何种编码方式。比如要传输的数据使用ASCII编码、Unicode编码还是二进制文件,是否要加密和压缩。发送端和接收端程序必须使用相同的编码方式,才能正确显示,否则就产生乱码。
(3)会话层:通信的应用程序之间建立、给维护和释放面向用户的连接。通信的应用程序之间建立会话,需要传输层建立1个或多个连接。
(4)传输层:负责在通信的两个计算机之间建立连接,实现可靠或不可靠的数据通信,能够实现发送端和接收端的丢包重传,流量控制。
(5)网络层:路由器查看数据包目标IP地址,根据路由表为数据包选择路径。路由表中的条目可以人工添加(静态路由),也可以动态生成(动态路由)
(6)数据链路层:不同的网络类型,发送数据的机制不同,数据链路层就是将数据包封装成能够在不同网络传输的帧,能够进行差错检查。但不纠错,检测出错误丢掉该帧。
(7)物理层:该层规定了网络设备接口标准、电压标准。尽可能地通过频分复用、时分复用技术在通信链路上更快的传输数据。
3. TCP/IP协议族
(1)TCP/IP实际是一个一起工作的通信家族,为网际数据通信提供通路。
(2)TCP/IP协议族大体上分为三个部分
①Internet协议(IP):
②传输控制协议(TCP)和用户数据报文协议(UDP)
③处理TCP和UDP之上的一组协议专门开发的应用程序。它们包括:远程登录(telnet)、文件传送协议(ftp)、域名服务(dns)和简单的邮件传送程序(smtp)等许多协议。
(3)网络层协议
①internet协议(IP):该协议设计成互联分组交换通信,以形成一个网际通信环境,它负责在源主机和目的主机之间传输来自较高层次软件的秋为数据报文的数据块,它在源和目标之间提供非连接型传递服务。
②网际控制报文协议(ICMP):icmp实际上并不是IP层部分,但直接同IP层一起工作,报告网络上的某些出错情况,允许网际路由器传输差错信息或测试报文。
③地址识别协议(ARP):实际上也不是网络层的部分,它处于IP和数据链路层之间,它是在32位IP地址和48位局域网物理地址之间执行翻译的协议。
(4)传输层协议
①传输控制协议(TCP):可靠的、面向连接的传输层服务,主要功能有:监听输入对话建立请求、请求别一网络站点对话、可靠的发送和接收数据和适度的关闭对话等。
②用户数据报文协议(UDP):提供不可靠的、非连接型传输层服务。它允许在源和目标主机之间传递数据而不必在传递数据之前建立对话。同时也不提供TCP使用的端对端差错校验功能。主要用于那些非连接型的应用。如名字服务、网络管理、视频点播和网络会议等。
(5)应用层协议
①Telnet:远程登录 ②FTP和TFTP:文件传送协议;
③SMTP:简单文件传送协议 ④DNS:域名服务
第12章 网络基础(1)_网络分层和TCP/IP协议族的更多相关文章
- 网络基础篇(一)--TCP/IP协议族
		
TCP/IP协议族是一个分层,多协议通信体系. 1 TCP/IP协议族体系结构 TCP/IP协议族自底而上分为四层: 数据链路层, 网络层, 传输层和应用层. 1.1 数据链路层 实现网卡接口的网络驱 ...
 - Android网络编程系列 一 TCP/IP协议族
		
在学习和使用Android网路编程时,我们接触的仅仅是上层协议和接口如Apache的httpclient或者Android自带的httpURlconnection等等.对于这些接口的底层实现我们也有必 ...
 - 第一章 了解TCP/IP协议族
		
第一章 了解TCP/IP协议族 1.1 TCP/IP协议族体系结构以及主要协议 IP和TCP协议对编写程序具有最直接的影响,后面的章节会详细的讲到. TCP/IP的体系结构有应用层,传输层,网络层,数 ...
 - 重识TCP/IP协议族与HTTP基础
		
不忘初心 砥砺前行, Tomorrow Is Another Day ! 本文概要: TCP/IP协议族的网络分层 TCP三次握手四次挥手 Http简介 报文结构 Http的请求方法及状态码 常用的H ...
 - 网络编程基础之C/S架构和TCP/IP协议
		
一.何谓C/S架构 C指的是client(客户端软件),S指的是Server(服务端软件),既然我们的的标题是网络编程基础, 那我们就一起来学习怎样写一个C/S架构的软件,实现服务端与客户端软件基于网 ...
 - Android网络编程系列 一 TCP/IP协议族之网际层
		
这篇借鉴的文章主要是用于后续文章知识点的扩散,在此特作备份和扩散学习交流. 网际层包括:IP.ICMP.IGMP 以及处在网际层实际工作在链路层的 ARP 和 RARP等等协议. 1.IP协议 互联网 ...
 - Android网络编程系列 一 TCP/IP协议族之链路层
		
这篇借鉴的文章主要是用于后续文章知识点的扩散,在此特作备份和扩散学习交流. 数据链路层有三个目的: 为IP模块发送和 接收IP数据报. 为ARP模块发送ARP请求和接收ARP应答. 为RARP发送RA ...
 - Tcp/Ip协议族简单解读及网络数据包/报/帧数据格式及封装及解包;
		
http://www.creseek.cn/products-install/install_on_bsd_linux/ 中文检索 离线cloudera ecosystem components: h ...
 - Android网络编程系列 一 TCP/IP协议族之传输层
		
这篇借鉴的文章主要是用于后续文章知识点的扩散,在此特作备份和扩散学习交流. 传输层中有TCP协议与UDP协议. 1.UDP介绍 UDP是传输层协议,和TCP协议处于一个分层中,但是与TCP协议不同,U ...
 
随机推荐
- Nuxt.js实践篇
			
nuxt.js 追求完美,相信大家都是这样的.因为前后端分离的弊端性,在项目构建时,浏览器并不会捕捉到项目的内容,所以开始,笔者决定引入nuxt.js文件来配合vue完成Server Slider R ...
 - POJ 2312:Battle City(BFS)
			
Battle City Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9885 Accepted: 3285 Descr ...
 - hdu1059 dp(多重背包二进制优化)
			
hdu1059 题意,现在有价值为1.2.3.4.5.6的石头若干块,块数已知,问能否将这些石头分成两堆,且两堆价值相等. 很显然,愚蠢的我一开始并想不到什么多重背包二进制优化```因为我连听都没有听 ...
 - hasura graphql-engine v1.0.0-alpha25 的几个方便功能
			
hasura graphql-engine 是一个很不错的graphql 引擎,但是我们的数据模型经常可能会有变动, 但是以前的版本对于这些的处理,官方的方式是删除元数据,重启server,都不是很好 ...
 - smarty 学习 ——smarty 开发环境配置
			
smarty 对于开发的便利性不用多说了,直接进行开发环境的配置. 1.下载smarty 开发包 直接在官网进行下载即可 2.引用开发核心库 将libs文件中的东西拷贝到工程. smarty.clas ...
 - MVC5 + EF6 + Bootstrap3系列教程
			
本系列教程以ASP.NET MVC5为核心框架,使用Entity Framewok6访问数据,并使用Bootstrap3作为前端UI框架.帮助大家开发出一套高效.美观.稳定.实用的软件系统. MVC5 ...
 - tomcat源码阅读之StandardContext
			
Context实例表示一个具体的web应用程序,其中包含一个或者多个Wrapper实例,每个Wrapper表示一个具体的servlet定义.StandardContext类是Context接口的标准实 ...
 - spring boot 项目文件结构
			
启动类建议放在RootPackage的原因: 根据SpringBoot的内置实现,Spring默认从@ComponentScan注解所在的位置开始向后扫描,也就是说,只要我们将组件放在启动类所在的Ro ...
 - vuex 知识点
			
Action 类似于 mutation,不同在于: 1.Action 提交的是 mutation,而不是直接变更状态. 2.Action 可以包含任意异步操作. mutation是同步的,当需要异步操 ...
 - postman 中 form-data、x-www-form-urlencoded、raw、binary的区别
			
区别 form-data: 就是http请求中的multipart/form-data,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开.既可以上传键值对,也可以上传文件.当上传的字段是文件 ...