报文交换

HTTP杂谈

别等时光非礼了梦想. 提交于 2020-01-24 05:03:31
HTTP 协议 HTTP请求和响应步骤 以上完整表示了HTTP请求和响应的7个步骤,下面从TCP/IP协议模型的角度来理解HTTP请求和响应如何传递的。 TCP/IP协议 TCP/IP协议模型(Transmission Control Protocol/Internet Protocol),包含了一系列构成互联网基础的网络协议,是Internet的核心协议,通过20多年的发展已日渐成熟,并被广泛应用于局域网和广域网中,目前已成为事实上的国际标准。TCP/IP协议簇是一组不同层次上的多个协议的组合,通常被认为是一个四层协议系统,与OSI的七层模型相对应。 HTTP协议就是基于TCP/IP协议模型来传输信息的。 (1). 链路层 也称作数据链路层或网络接口层(在第一个图中为网络接口层和硬件层),通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换IP层和网络接口层使用的地址。 (2). 网络层 也称作互联网层(在第一个图中为网际层),处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互联网控制报文协议),以及IGMP协议

计算机网络网络层IP协议

半城伤御伤魂 提交于 2020-01-23 23:06:02
本文是在学习谢希仁编著的《计算机网络》一书的网络层相关知识后,对某些个人认为是重点内容的部分做出的总结。 本文的将涉及:IP地址划分,CIDR,ARP,IPv4数据报格式,IP层转发分组的过程,ICMP,路由选择协议,IPv6,MPLS. 1. IP地址划分 首先要清楚,IP地址是给互联网上每一台主机或路由器的每一个接口分配一个在全世界范围内是唯一的32位的标识符,而且是一个软件地址(有别于MAC地址)。 IP地址由互联网名字和数字分配机构ICANN(Internet Corporation for Assigned Names and Numbers)进行分配。 IP地址呈现两级结构,第一级为网络号,由IP地址管理机构分配,第二级为主机号,由运行商自行分配。IP地址的结构可以记为: IP地址 ::= { <网络号>, <主机号> } 传统的IP地址被划分为5类: A, B ,C ,D ,E类。前三类为单播地址,D类为多播地址,E类保留为以后用。每类IP地址的格式详见《计算机网络》(谢希仁著,第七版) P119,这里不多阐述,事实上,由于近年来已经广泛地使用了无分类的IP地址进行路由选择,A, B, C类地址的区分已经成为了历史。这里仅介绍一下IPv4中某些特殊的地址: 网络号 : 主机号 源地址使用 : 目的地址使用 : 意义 0 : 0 可 : 不可 :

计算机网络

走远了吗. 提交于 2020-01-23 16:22:23
计算机网络太难?了解这一篇就够了 【原文链接https://juejin.im/post/5d896cccf265da03bd055c87】 1、谈下你对五层网络协议体系结构的理解? 学习计算机网络时我们一般采用折中的办法,也就是中和 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构,这样既简洁又能将概念阐述清楚。 1. 应用层   应用层的任务是通过 应用进程 间的交互来完成特定网络应用。应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和交互的规则。 对于不同的网络应用需要不同的应用层协议 。、应用层交互的数据单元称为报文。 2. 运输层   运输层的主要任务就是负责向 两台主机进程 之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层报文。“通用的”是指并不针对某一个特定的网络应用,而是多种应用可以使用同一个运输层服务。    由于一台主机可同时运行多个线程,因此运输层有 复用 和 分用 的功能。所谓复用就是指多个应用层进程可同时使用下面运输层的服务,分用和复用相反,是运输层把收到的信息分别交付上面应用层中的相应进程。   运输层还要对收到的报文进行 差错检测 。在网络层,IP数据包首部中的检验和字段只检验首部是否出现差错而不检验数据部分。   运输层向高层屏蔽了下面网络核心的细节

计网笔记

試著忘記壹切 提交于 2020-01-22 11:04:26
应用层 应用程序的体系结构 目前主要的网络应用程序体系结构有以下两种:客户-服务器体系结构和P2P体系结构。 客户-服务器体系结构 :有一个总是打开的主机称为 服务器 ,服务于来自其他称为 客户 的的主机的请求;一个典型例子就是Web应用程序。Web服务器响应来自与客户端程序的请求,提供请求的对象,客户与客户之间并不会相互通信。 P2P体系结构 :应用程序在间断连接的主机之间直接通信,这些主机被称为对等方。目前流量密集型应用都是用P2P体系结构,包括文件共享(比如BitTorrent)、对等放协助下载器(迅雷)、某些因特网电话和视频应用(Skype)。 应用层的主要协议 应用层主要有以下协议:超文本传输协议(HyperText Transfer protocol,HTTP),简单邮件传输协议(Simple Mail Transfer Protocol,SMTP)和域名系统(Domain Name System,DNS)。 1.超文本传输协议(HTTP) HTTP概述 HTTP定义了客户程序和服务器程序进行报文交换的方式,包括Web客户向Web服务器请求Web页面的方式,以及服务器向客户传送Web页面的方式。 Web页面由对象组成,一个对象只是一个文件,例如是一个HTML文件、一个JPEG的图片或者一段视频;它们可以通过URL进行地址寻址。 HTTP使用TCP作为它的支撑运输协议

HTTP/HTTPS协议

耗尽温柔 提交于 2020-01-20 14:35:30
HTTP协议是什么? 超文本传输协议(HyperText Transfer Protocol, 缩写:HTTP)是一种用于分布式、协作式和 超媒体信息系统的 应用层协议。 设计HTTP最初的目的是为了提供一种发布和接收 HTML页面的方法。通过HTTP或者HTTPS协议请求的资源由 统一资源标识符(Uniform Resource Identifiers,URI)来标识。 Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求。Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的。所以Http连接是一种短连接,是一种无状态的连接。 怎么理解"HTTP是无状态协议"? 无状态协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息. 所谓的无状态,是指浏览器每次向服务器发起请求的时候,不是通过一个连接,而是每次都建立一个新的连接。如果是一个连接的话,服务器进程中就能保持住这个连接并且在内存中记住一些信息状态。而每次请求结束后,连接就关闭,相关的内容就释放了,所以记不住任何状态,成为无状态连接。 无状态协议解决办法: 通过 1、Cookie 2、通过Session 会话保存。 Cookie 在实际业务场景中,会要求用户在页面A进行账号登陆

大厂面试中三次握手延伸出来n连发你受得了?

别说谁变了你拦得住时间么 提交于 2020-01-20 03:13:34
秋招面试也不记得多少家公司会有这个面试题。所以将其总结一下并分享给大家。 文章目录 一、这是一次有故事的对话 二、三次握手的客户端服务端状态 1 先画个图看看有哪些状态 2 tcp协议内容解析 3 通过工具wireshark来验证我们所述 三、说下Linux网络编程常用API 1 Linux网络编程常用API 2 粘包现象 四、再说说为啥不是两次握手或者四次握手? 五、最后聊一聊分析网络程序的工具 1 网络程序调试工具的思维导图 2 详解各个小工具 六 结尾 嘀嘀嘀。。。。一看广东,难道是腾讯的面试,哦原来是电话面试。那就开始吧! 一、这是一次有故事的对话 先说说三次握手的各个状态 二、三次握手的客户端服务端状态 1 先画个图看看有哪些状态 嗯?这些ack seq是干啥的呢,不急不急,我们先把tcp协议格式内容给整明白了。 2 tcp协议内容解析 小贱先把tcp的头部搬过来 然后我们来解析一下各个字段是什么意思 字段名 字段描述 16位端口号 告知主机该报文是来自哪里以及传给哪个上层协议或应用程序(目的端口)的。 32位序列号 一次TCP通信(从TCP连接建立到断开)过程中某一个传输方向上的字节流的每个字节的编号 32位确认号 用作对另一方发送来的TCP报文段的响应 4位头部长度 标识该TCP头部有多少个32bit字(4字节)。因为4位最大能表示15,所以TCP头部最长是60字节。

大厂面试中三次握手延伸出来n连发你受得了?

柔情痞子 提交于 2020-01-19 22:58:41
目录 一、这是一次有故事的对话 二、三次握手的客户端服务端状态 1 先画个图看看有哪些状态 2 tcp协议内容解析 3 通过工具wireshark来验证我们所述 三、说下Linux网络编程常用API 1 Linux网络编程常用API 2 粘包现象 四、再说说为啥不是两次握手或者四次握手? 五、最后聊一聊分析网络程序的工具 1 网络程序调试工具的思维导图 2 详解各个小工具 六 结尾 秋招面试也不记得多少家公司会有这个面试题。所以将其总结一下并分享给大家。 @ 嘀嘀嘀。。。。一看广东,难道是腾讯的面试,哦原来是电话面试。那就开始吧! 一、这是一次有故事的对话 先说说三次握手的各个状态 二、三次握手的客户端服务端状态 1 先画个图看看有哪些状态 嗯?这些ack seq是干啥的呢,不急不急,我们先把tcp协议格式内容给整明白了。 2 tcp协议内容解析 小贱先把tcp的头部搬过来 然后我们来解析一下各个字段是什么意思 字段名 字段描述 16位端口号 告知主机该报文是来自哪里以及传给哪个上层协议或应用程序(目的端口)的。 32位序列号 一次TCP通信(从TCP连接建立到断开)过程中某一个传输方向上的字节流的每个字节的编号 32位确认号 用作对另一方发送来的TCP报文段的响应 4位头部长度 标识该TCP头部有多少个32bit字(4字节)。因为4位最大能表示15,所以TCP头部最长是60字节。

第一章--概述

試著忘記壹切 提交于 2020-01-18 14:53:34
本章目录 : 1.计算机网络在信息时代中的作用 2.互联网的概述 2.1网络的网络 2.2互联网基础结构发展的三个阶段 2.3互联网的标准化工作 3.互联网的组成 3.1互联网的边缘部分 3.2互联网的核心部分 4.计算机网络在我国的发展 5.计算机网络的类别 5.1计算机网络的定义 5.2几种不同类别的计算机网络 6.计算机网络的性能 6.1计算机网络的性能指标 6.2计算机网络的非性能指标 7.计算机网络体系结构 7.1计算机网络体系结构的形成 7.2协议与划分层次 7.3具有五层协议的体系结构 7.4实体,协议,服务和服务访问点 7.5TCP/IP的体系结构 本章先介绍计算机网络在信息时代的作用,接着对互联网进行概述,包含 互联网基础结构发展的三个阶段 ,以及以后的发展趋势。然后讨论 互联网组成的边缘部分和核心部分 。简单介绍计算机网络在我国发展以及计算机网络的类别后,讨论了 计算机网络的性能指标 。最后讨论整个课程都要用到的重要的概念---计算机网络的体系结构 本章最重要的内容是 : 互联网边缘部分和核心部分,其中包含分组交换的概念 计算机网络的性能指标 计算机网络分层次的体系结构,包含了协议和服务的概念 1.计算机网络在信息时代中的作用 21世纪的一些重要的体征就是数字化,网络化和信息化,它是一个以网络为核心的信息时代 三大类网络 :电信网络,有线电视网络和计算机网络

计算机网络知识点整理

别说谁变了你拦得住时间么 提交于 2020-01-18 06:54:19
(更新中) 参考书:《计算机网络自顶向下方法 原书第七版》 第一章 计算机网络和因特网 1、什么是协议? 协议(protocol) ,定义了在两个或多个通信实体间 传输报文的格式和顺序 ,以及 报文发送和/或接收一条报文或其他事件所采取的动作 。 2、什么是网络边缘,常用设备有哪些? 与因特网相连的计算机和其他设备称为端系统 例如: 桌面计算机 服务器 移动计算机。 3、常用家庭接入方式有哪些,企业和移动接入方式有哪些? 家庭接入 : DSL(用户数字线) 电缆 FTTH(光纤到户) 拨号 卫星 企业接入 以太网 WIFI 移动接入 3G LTE(长期演进) 4、导引型物理传输媒体有哪些?非导引型物理传输媒体有哪些? 导引型物理传输媒体 双绞铜线 同轴电缆 光纤 非导引型物理传输媒体 陆地无线电信道 卫星无线电信道 5、什么是网络核心?网络核心通常设备有哪些? 互联因特网 端系统的分组交换机和链路构成的网状网络 。 网络核心通常设备有 路由器(Route) 和 链路层交换机(link-layer switch) 。 6、简单描述存储转发传输机制? 传输当前分组时,需要完全的接收到分组,才能把该分组推向数据链路。 7、网络中数据交换的两种基本方式时什么? 分组交换 电路交换 。 8、电路交换中的复用方式有哪些?分组交换和电路交换的对比? 复用方式: 频分复用 和 时分复用 。

TCP的三次握手与四次挥手(详解+动图)

梦想的初衷 提交于 2020-01-18 05:05:01
背景描述 通过上一篇中网络模型中的 IP层的介绍 ,我们知道网络层,可以实现两个主机之间的通信。但是这并不具体,因为,真正进行通信的实体是在主机中的进程,是一个主机中的一个进程与另外一个主机中的一个进程在交换数据。IP协议虽然能把数据报文送到目的主机, 但是并没有交付给主机的具体应用进程 。而 端到端的通信 才应该是应用进程之间的通信。 UDP,在传送数据前不需要先建立连接,远地的主机在收到UDP报文后也不需要给出任何确认。虽然UDP不提供可靠交付,但是正是因为这样,省去和很多的开销,使得它的速度比较快,比如一些对实时性要求较高的服务,就常常使用的是UDP。对应的应用层的协议主要有 DNS,TFTP,DHCP,SNMP,NFS 等。 TCP,提供面向连接的服务,在传送数据之前必须先建立连接,数据传送完成后要释放连接。因此TCP是一种可靠的的运输服务,但是正因为这样,不可避免的增加了许多的开销,比如确认,流量控制等。对应的应用层的协议主要有 SMTP,TELNET,HTTP,FTP 等。 常用的熟知端口号 应用程序 FTP TFTP TELNET SMTP DNS HTTP SSH MYSQL 熟知端口 21,20 69 23 25 53 80 22 3306 传输层协议 TCP UDP TCP TCP UDP TCP TCP TCP TCP的概述 TCP把连接作为最基本的对象