网络基础(一)
来源:SegmentFault
时间:2023-02-24 17:31:53 167浏览 收藏
积累知识,胜过积蓄金银!毕竟在##column_title##开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《网络基础(一)》,就带大家讲解一下MySQL、Java、Linux、python、iphone知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~
博文参考
http://www.cnblogs.com/gsk99/p/4920699.html http://www.cnblogs.com/iloverain/p/5619665.html http://blog.csdn.net/leo_walker/article/details/51627760
TCP图解
TCP结构
网络接口层
物理层定义与传输媒体的接口有关的一些特性,即机械特性、电气特性、功能特性、过程特性,并需要完成并行传输和串行传输之间的转换。 数据链路层向该层用户提供透明的和可靠的数据传输服务。 透明性是指该层上传输的数据的内容、格式及编码没有限制,也没有必要解释信息结构的意义;可靠性是指在传输过程中将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,其具体的方法有帧同步、差错控制、流量控制、链路管理。 数据链路层中的主要协议有点对点协议PPP,CSMA/CD协议,以太网802.3。
网际层(IP层)
网际层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网际层不提供服务质量的承诺,即所传输的分组可能出错、丢失、重复和失序,当然也不保证分组交付的时限。 网际层中主要协议有IP协议,地址解析协议ARP和网际控制报文协议ICMP等。 IP协议是网际层的核心,通过路由选择将下一跳IP封装后交给网络接口层。IP 数据报是无连接服务。 ICMP是网际层的补充,可以回送报文。用来检测网络是否通畅(使用ping命令)。 ARP是通过已知IP,寻找对于主机的MAC地址。
运输层
运输层为应用进程之间提供端到端(进程到进程)的逻辑通信,并具有复用和分用的功能,即发送方不同的应用进程都可以使用同一个运输层协议传送数据;接收方的运输层在剥去报文的首部后能够把这些数据正确交付到目的应用进程。运输层还将对报文进行差错控制,以提供可靠传输。 运输层中主要协议有用户数据报协议UDP和传输控制协议TCP
应用层
应用层为用户提供应用程序。 应用层中主要协议有域名系统DNS,文件传输协议FTP,远程终端协议TELNET,超文本传输协议HTTP,简单邮件传送协议SMTP,邮件读取协议POP3和IMAP,动态主机配置协议DHCP等。 DNS:提供域名解析服务,提供域名到IP地址之间的转换,使用端口53 FTP:在异构网络中任意计算机之间传送文件,使用端口21 TELNET:提供用户远程登录服务,使用端口23,使用明码传送,保密性差、简单方便 HTTP:用于实现万维网上的各种链接,即万维网客户程序与万维网服务器之间的连接,使用端口80 SMTP/POP3、IMAP:提供邮件的传输,用来控制信件的发送、中转、从邮件服务器读取邮件 DHCP:为新加入网络的计算机自动分配IP地址
TCP/IP协议
ARP协议
解决同一个局域网内主机或路由器的IP地址和MAC地址的映射问题。 假设在一个以太网上的 4 台计算机,分别是计算机 A 、 B 、 X 和 Y ,通过TCP/IP 协议进行通信,那么双方的数据链路层必须知道对方的 MAC 地址。每台计算机都要在各自的高速缓存区中存放一张 IP 地址到 MAC 地址的转换表,称 ARP 表。其中存放着最近用到的一系列和它通信的处于同一子网的计算机的 IP 地址和 MAC 地址的映射。在主机初始启动时, ARP 表为空。现在源端计算机 A ( 192.168.3.1 )要和计算机 B(192.168.3.2)通信。在计算机 A 发送信息前, 必须首先得到计算机B的MAC地址的映射关系。
RARP协议
反向地址转换协议(RARP:Reverse Address Resolution Protocol) 反向地址转换协议(RARP)允许局域网的物理机器从网关服务器的 ARP 表或者缓存上请求其 IP 地址。网络管理员在局域网网关路由器里创建一个表以映射物理地址(MAC)和与其对应的 IP 地址。当设置一台新的机器时,其 RARP 客户机程序需要向路由器上的 RARP 服务器请求相应的 IP 地址。假设在路由表中已经设置了一个记录,RARP 服务器将会返回 IP 地址给机器,此机器就会存储起来以便日后使用。 RARP 可以使用于以太网、光纤分布式数据接口及令牌环LAN
DHCP协议
DHCP是动态主机配置协议,常用于给主机动态地分配IP地址, 他提供了即插即用联网的机制,这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与; DHCP是应用层协议, 他是基于UDP的;
ICMP协议
IP提供的是尽最大努力交付的无连接服务,因此并不能解决网络层中的数据报丢失、重复、延迟或乱序等问题,为了提高IP数据报成功交付的机会, 在网络层使用ICMP(Internet Control Message Protocol:Internet控制报文协议)协议来允许主机或者路由器报告差错和异常情况.
RIP协议
路由信息协议RIP是一种分布式的基于距离向量的路由选择协议, 属于内部网关协议(IGP)。RIP协议中的“距离”也称为“跳数”,每经过一个路由器,跳数就加1。协议规定: 同一自治系统(A.S.)中的路由器每30秒会与相邻的路由器交换路由信息,以动态的建立路由表。当传输数据时,RIP将选择一条具有最少路由器的路由。
OSPF协议
OSPF (Open Shortest Path First, 开放最短路径优先)。它是为克服RIP的缺点在1989年开发出来的。OSPF的原理很简单,但实现起来却较复杂。“开放”表明OSPF协议不是受某一家厂商控制,而是公开发表的。“最短路径优先”是因为使用了Dijkstra最短路径算法。
BGP协议
BGP(Border Gateway Protocol)是一种不同自治系统的路由器之间交换路由信息的协议, 它的基本功能是在自治系统间自动交换无环路的路由信息, 他是一种外部网关协议(EGP), 边界网关协议常常应用于互联网的网关之间. 路由表包含已知路由器的列表, 路由器能够到达的地址以及到达每个路由器的跳数. 由于: 1)因特网的规模太大, 使得自治系统之间路由选择非常困难; 2)对于自治系统之间的路由选择, 要寻找最佳路由是很不现实的; 3)自治系统之间的路由选择必须考虑有关策略; 因此, 边界网关协议BGP只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子), 而非要找到一条最佳路由. BGP采用的是”路径向量选择协议”, 他与距离向量协议和链路状态协议都有很大的区别. BGP是应用层协议, 他是基于TCP的;
IGMP协议
IGMP协议用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。 组播路由器不需要保存所有主机的成员关系,它只是通过IGMP协议了解每个接口连接的网段上是否存在某个组播组的组成员。而主机只需要保存自己加入了哪些组播组。 简而言之,IGMP协议是让连接在本地局域网上的组播路由器知道本局域网上是否有主机上的某个进程参加或退出了某个组播组。 IGMP应视作TCP/IP协议的一部分, 其工作可以分为两个阶段: 1)当某个主机加入新的组播组时, 该主机应向组播组的组播地址发送一个IGMP报文, 声明自己要成为该组的成员. 本地组播路由器收到ICMP报文后, 将组成员关系转发给因特网上其他的组播路由器. 2)因为组成员的关系是动态的, 本地组播路由器要周期性地探询本地局域网上的路由器, 以便知道这些主机是否还继续是组的成员. 只要对某个组有一个主机响应, 那么组播路由器就认为这个组是活跃的. 但一个组在经过几次探询之后仍然没有一个主机响应, 则不再将该组的成员关系转发给其他的组播路由器.
TCP/IP数据封装
TCP/IP数据解封装
本篇关于《网络基础(一)》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!
声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
-
499 收藏
-
244 收藏
-
235 收藏
-
157 收藏
-
101 收藏
最新阅读
更多>
-
335 收藏
-
467 收藏
-
303 收藏
-
176 收藏
-
368 收藏
-
475 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习