互联网的运行原理

熵桥流沙
• 阅读 1161

互联网的运行原理-----整理

  • 上网流程
    连入网络之后,就会给提供一个ip地址;我上网浏览b站即互联网中客户端和服务器端进行通信;即我发送消息到b站服务器,消息转换为电子信号,通过电缆发送给b站服务器,在服务器端将电子信号转化为计算机可以使用的数据后处理完再回复消息,用同样的方式返回来;
  • 流程原理:
    主要通过tcp/ip协议族;其中包括应用层、tcp传输控制层、ip网络层、链路层
    这些网络协议通过分层来明确每一层的工作职责,通过定义明确的接口来协同工作,每一层都可以使用下面各层提供的功能,而不必担心各层是如何实现,
    应用层:负责提供特定于应用程序的协议,比如负责浏览器和网络服务器相互通信的HTTP协议,负责文件传输的FTP协议,负责点子邮件客户端检索文件的IMAP协议;
    传输控制层:负责发送数据包到计算机上使用特定端口号的应用程序;
    网络层:使用IP地址将数据包发送到特定的计算机;
    链路层:负责将二进制的数据包与网络信号之间的相互转换;
    请求b站的流程:使用应用层的http协议获取请求的html内容,发送一个请求消息,消息发送前被分解为好几个数据包,通过应用层进去tcp传输层后,每个数据包回被分配一个序列号,来保证数据包的顺序传输,同时tcp是可靠传输的,有三次握手建立连接后才会交换数据(每个收到的数据包通过发送ack确认,保证发送成功),进入ip网络层后,对数据包赋予目标计算机的ip地址,将其路由到目标计算机,其中每个数据包都是独立的,可能回乱序到达或者在传输过程中丢失,目标计算机的tcp传输层会根据数据包上的序列号进行排序重组,如果没有收到ack确认后会重新发送该数据包;有了ip地址和序列号之后,链路层会将数据包的文本信息转化为电子信号,然后通过电缆传输,在电缆的另一端的路由器检查,每个数据包中的目标地址,并确定将其发送到何处;最终数据包到达服务器后,从tcp/IP协议族的底部开始向上运行,当数据包向上通过协议族时,客户端添加的一些IP地址和端口号从数据包中剥离出来,当数据到达应用层时恢复成初始的状态,通过端口号将数据传输给当前服务器,监听该端口的应用程序,会根据当前的请求数据做出反应,将HTML的数据按照刚才的路程返回自己的电脑,就看到了b站的首页内容,完成了一次交互;
    (其中数据包通常会经过多个路由器和主干网到达目的地,主要是通过路由找到正确的路线将数据包送到目的地,路由器上有个路由表记录了子网络的所有IP地址,当数据包到达路由器,路由器检查路由表上是否有目的地和IP地址,如果有则直接发送给呢个网络,否则就向上册路由器发送地址,在更高得层级去寻找拥有该IP的路由器,直到到达nsp主干网为止,然后找到该ip的路由表,向下寻找,直到找到目的地为止,访问到目标服务器)
    (浏览器是如何通过域名知道访问的哪个IP地址呢,这里需要使用到DNS,DNS是一个分布式数据库,上面记录了域名和其IP的对应关系,在浏览器输入网址时,浏览器首先连接dns服务器,获取到该域名的IP地址后,浏览器再连接访问该ip 的服务器,有了dns后之后服务器的IP地址有了变化后,重新绑定下域名和新的IP地址就可以了,这样就不会影响到访问该站点的用户)
点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
3年前
CIDR的IP地址的表示与划分方法
早期的ip地址划分:最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。IP地址是一个32位的二进制字符,为了方便人类的记忆,所以,通常人们会将二进制的IP地址表示成十
Wesley13 Wesley13
3年前
Uber准备放弃自动驾驶,转手卖给前谷歌无人车CTO,估值曾被孙正义炒到72.5亿美元
!(https://oscimg.oschina.net/oscnet/0fe7cb00a0cf4872b022342d1e21d47e.png)杨净发自凹非寺量子位报道|公众号QbitAI最新消息,Uber要出售无人驾驶部门(ATG)了。据TechCrunch报道,Uber有意向出售,而也有人愿意买。
Wesley13 Wesley13
3年前
Java使用SSLSocket通信
JSSE(JavaSecuritySocketExtension)是Sun公司为了解决互联网信息安全传输提出的一个解决方案,它实现了SSL和TSL协议,包含了数据加密、服务器验证、消息完整性和客户端验证等技术。通过使用JSSE简洁的API,可以在客户端和服务器端之间通过SSL/TSL协议安全地传输数据。首先,需要将OpenSSL生成根证书CA及签
Wesley13 Wesley13
3年前
IP地址和物理地址有什么区别
!(https://oscimg.oschina.net/oscnet/0dc5b3ffaa0ff9719e5bc2a0a05060f7548.png)所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。简单地说就是你在整个互联网上的ID。MAC(MediaAccessControl,介质访问控制
Stella981 Stella981
3年前
Netty 应用:Socket服务器
Socket服务器Netty作为Socket服务器,需要编写服务端和客户端,服务器端和客户端收发消息通过自定义的Handler.channelRead0方法来交互,客户端连接上服务器后,需要在active时向服务器发送一条消息来触发服务器的行为。服务端实现/Createdbyfubinon2019/7/
Wesley13 Wesley13
3年前
unity将 -u4E00 这种 编码 转汉字 方法
 unity中直接使用 JsonMapper.ToJson(对象),取到的字符串,里面汉字可能是\\u4E00类似这种其实也不用转,服务器会通过类似fastjson发序列化的方式,将json转对象,获取对象的值就是中文但是有时服务器要求将传参中字符串中类似\\u4E00这种转汉字,就需要下面 publ
Wesley13 Wesley13
3年前
34.TCP取样器
阅读文本大概需要3分钟。1、TCP取样器的作用   TCP取样器作用就是通过TCP/IP协议来连接服务器,然后发送数据和接收数据。2、TCP取样器详解!(https://oscimg.oschina.net/oscnet/32a9b19ba1db00f321d22a0f33bcfb68a0d.png)TCPClien
专注IP定位 专注IP定位
1年前
当浏览器能够自动隐藏用户IP地址,“IP数据库”的出路在哪里?
第一章近期了解到谷歌正准备测试Chrome浏览器的新“IP保护”功能,该功能是通过使用代理服务器将用户的IP地址匿名化以此保障用户隐私。当用户使用浏览器进行上网时,网站日志会自动记录连接互联网的IP地址,网站运维人员可以根据留痕的IP地址进行浏览轨迹跟踪,
内网部署,移动端如何使用,且保障电脑端安全
"A.在企业内网自建DNS服务,然后使用域名代替公网IP重新配置;B.在互联网区域,使用互联网DNS服务将域名解析到公网IP;C.在内网区域,使用自建DNS服务将域名解析到服务器内网IP,这样内网电脑不能联网也能正常使用,互联网手机也能正常收发消息;D.如