服务器类型

Socket——NAT穿透解决方案:UDP打洞

守給你的承諾、 提交于 2020-01-22 16:03:25
目标 路由穿透,实现广域网P2P通讯。 4种典型NAT类型 按照NAT设备在进行地址映射时行为的不同,NAT可以分为以下四种: Full Cone Restricted Cone Port Restricted Cone Symmentric 目前主要的NAT类型有如下几种: 1)Full-cone NAT, also known as one-to-one NAT 一旦一个内网地址 (iAddr:iPort) 被映射到一个外部地址 (eAddr:ePort), 来自 iAddr:iPort 的任何数据包将通过 eAddr:ePort 发送. 任何外部主机能够通过eAddr:ePort这个地址发送数据包到iAddr:iPort. 2)Address-restricted-cone NAT 一旦一个内网地址 (iAddr:iPort) 被映射到一个外部地址 (eAddr:ePort), 来自 iAddr:iPort 的任何数据包将通过 eAddr:ePort 发送. 仅只有接收到主机(iAddr:iPort)通过eAddr:ePort发送的数据包的外部主机通过该主机的任何端口发送到eAddr:ePort的数据包才能够被正确的转发到iAddr:iPort.也就是说主机有关端口无关. 3)Port-restricted cone NAT 类似于address restricted

NAT协议详解

旧街凉风 提交于 2020-01-22 15:47:59
NAT(Network Address Translation,网络地址转换)是将IP数据报头中的IP地址转换为另一个IP地址的过程。 在实际应用中,NAT主要用于实现私有网络访问公共网络的功能。这种通过使用少量的公网IP地址代表较多的私网IP地址的方式,将有助于减缓可用IP地址空间的枯竭。 私网IP地址是指内部网络或主机的IP地址,公网IP地址是指在因特网上全球唯一的IP地址。 RFC 1918为私有网络预留出了三个IP地址块,如下: A类:10.0.0.0~10.255.255.255 B类:172.16.0.0~172.31.255.255 C类:192.168.0.0~192.168.255.255 (上述三个范围内的地址不会在因特网上被分配,因此可以不必向ISP或注册中心申请而在公司或企业内部自由使用。) NAT最初的设计目的是用于实现私有网络访问公共网络的功能,后扩展到实现任意两个网络间进行访问时的地址转换应用,本文中将这两个网络分别称为内部网络(内网)和外部网络(外网),通常私网为内部网络,公网为外部网络。 内网用户主机PC(192.168.1.3)向外网服务器(1.1.1.2)发送的IP报文通过NAT设备。 l NAT设备查看报头内容,发现该报文是发往外网的,将其源IP地址字段的私网地址192.168.1.3转换成一个可在Internet上选路的公网地址20.1.1

HTTP长连接与短连接

流过昼夜 提交于 2020-01-22 13:23:48
1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺序与发出顺序一致。TCP有可靠,面向连接的特点。 2. 如何理解HTTP协议是无状态的 HTTP协议是无状态的,指的是协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。也就是说,打开一个服务器上的网页和你之前打开这个服务器上的网页之间没有任何联系。HTTP是一个无状态的面向连接的协议,无状态不代表HTTP不能保持TCP连接,更不能代表HTTP使用的是UDP协议(无连接)。 3. 什么是长连接、短连接? 在HTTP/1.0中,默认使用的是短连接。也就是说,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。如果客户端浏览器访问的某个HTML或其他类型的 Web页中包含有其他的Web资源,如JavaScript文件、图像文件、CSS文件等;当浏览器每遇到这样一个Web资源,就会建立一个HTTP会话。 但从 HTTP/1.1起,默认使用长连接,用以保持连接特性。使用长连接的HTTP协议,会在响应头有加入这行代码: Connection:keep-alive

HTTP长连接和短连接

喜夏-厌秋 提交于 2020-01-22 13:23:20
1. HTTP协议与TCP/IP协议的关系   HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺序与发出顺序一致。TCP有可靠,面向连接的特点。 2. 如何理解HTTP协议是无状态的   HTTP协议是无状态的,指的是协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。也就是说,打开一个服务器上的网页和你之前打开这个服务器上的网页之间没有任何联系。HTTP是一个无状态的面向连接的协议,无状态不代表HTTP不能保持TCP连接,更不能代表HTTP使用的是UDP协议(无连接)。 3. 什么是长连接、短连接?    在HTTP/1.0中,默认使用的是短连接 。也就是说,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。如果客户端浏览器访问的某个HTML或其他类型的 Web页中包含有其他的Web资源,如JavaScript文件、图像文件、CSS文件等;当浏览器每遇到这样一个Web资源,就会建立一个HTTP会话。 但从 HTTP/1.1起,默认使用长连接 ,用以保持连接特性。使用长连接的HTTP协议,会在响应头有加入这行代码: Connection

计网笔记

試著忘記壹切 提交于 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作为它的支撑运输协议

apache web服务器

社会主义新天地 提交于 2020-01-22 05:46:42
一、安装 apache2.4.23 新版本的 httpd-2.4 新增以下特性; 新增模块; mod_proxy_fcgi(可提供 fcgi 代理) mod_ratelimit(限制用户带宽) mod_request(请求模块,对请求做过滤) mod_remoteip(匹配客户端的 IP 地址) 对于基于 IP 的访问控制做了修改,不再支持 allow,deny,order 机制,而是统一使用 require 进行 还新增以下几条新特性; 1、MPM 支持在运行时装载;不过要开启这种特性,在编译安装要启用这三种功能; --enable-mpms-shared=all --with-mpm=event 2、支持 event 3、支持异步读写 4、在每个模块及每个目录上指定日志级别 5、增强版的表达式分析器 6、每请求配置:, 7、毫秒级别的 keepalive timeout 8、基于 FQDN 的虚拟主机不再需要 NameVirtualHost 指令 9、支持使用自定义变量 安装环境:操作系统:Centos7.2,关闭 selinux 检查 httpd 包是否安装,如查安装则卸载 [root@www ~]# rpm -q httpd 1、安装 apache2.4.23 下载源码包: httpd-2.4.23.tar.gz apr-1.5.2.tar.gz apr-util-1.5

202001220——servlet菜鸟学习

为君一笑 提交于 2020-01-22 05:26:29
Servlet是什么 Java Servlet是运行在服务器或者应用服务器上的程序,它是作为来自Web浏览器或者其他Http客户端的请求和Http服务器上的数据库或应用程序之间的中间层。 Servlet生命周期 Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程: Servlet 通过调用 init () 方法进行初始化。 Servlet 调用 service() 方法来处理客户端的请求。 Servlet 通过调用 destroy() 方法终止(结束)。 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。 init方法 init 方法被设计成只调用一次。它在第一次创建 Servlet 时被调用,在后续每次用户请求时不再调用。因此,它是用于一次性初始化,就像 Applet 的 init 方法一样。 Servlet 创建于用户第一次调用对应于该 Servlet 的 URL 时,但是您也可以指定 Servlet 在服务器第一次启动时被加载。 当用户调用一个 Servlet 时,就会创建一个 Servlet 实例,每一个用户请求都会产生一个新的线程,适当的时候移交给 doGet 或 doPost 方法。init() 方法简单地创建或加载一些数据,这些数据将被用于 Servlet 的整个生命周期。 public void init (

了解Cookie

♀尐吖头ヾ 提交于 2020-01-22 04:43:40
前言 网络早期最大的问题之一是如何管理状态。简而言之,服务器无法知道两个请求是否来自同一个浏览器。当时最简单的方法是在请求时,在页面中插入一些参数,并在下一个请求中传回参数。这需要使用包含参数的隐藏的表单,或者作为URL参数的一部分传递。这两个解决方案都手动操作,容易出错。 网景公司当时一名员工Lou Montulli,在1994年将“cookies”的概念应用于网络通信,用来解决用户网上购物的购物车历史记录,目前所有浏览器都支持cookies。 cookie是什么 cookie翻译过来是“饼干,甜品”的意思,cookie在网络应用中到处存在,当我们浏览之前访问过的网站,网页中可能会显示:你好,王三少,这就会让我们感觉很亲切,像吃了一块很甜的饼干一样。 由于http是无状态的协议,一旦客户端和服务器的数据交换完毕,就会断开连接,再次请求,会重新连接,这就说明服务器单从网络连接上是没有办法知道用户身份的。怎么办呢?那就给每次新的用户请求时,给它颁发一个身份证(独一无二)吧,下次访问,必须带上身份证,这样服务器就会知道是谁来访问了,针对不同用户,做出不同的响应。,这就是Cookie的原理。 其实cookie是一个很小的文本文件,是浏览器储存在用户的机器上的。Cookie是纯文本,没有可执行代码。储存一些服务器需要的信息,每次请求站点,会发送相应的cookie

HTTP简介

让人想犯罪 __ 提交于 2020-01-22 00:33:01
HTTP概念 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。 HTTP协议,即超文本传输协议(Hypertext transfer protocol)。是一种详细规定了浏览器和万维网(WWW = World Wide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。 HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部 分内容首先显示(如文本先于图形)等。 HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议。 在Internet中所有的传输都是通过TCP/IP进行的。HTTP协议作为TCP/IP模型中应用层的协议也不例外。HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。 HTTP特点 1、支持客户/服务器模式。支持基本认证和安全认证。 2、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST

微服务(概念篇):什么是微服务?一篇文章让你彻底搞明白

落爺英雄遲暮 提交于 2020-01-21 18:29:07
目录 前言 一、微服务介绍 1.什么是微服务 微服务由来 为什么需要微服务? 3.1 早期的单体架构带来的问题 3.2 微服务与单体架构区别 3.3 微服务与SOA区别 微服务本质 什么样的项目适合微服务 微服务折分与设计 6.1 微服务设计原则 微服务优势与缺点 7.1 特性 7.2 特点 7.3 缺点 微服务开发框架 Sprint cloud 和 Sprint boot区别 二、微服务实践先知 客户端如何访问这些服务?(API Gateway) 服务之间如何通信?(服务调用) 这么多服务怎么查找?(服务发现) 服务挂了怎么办? 微服务需要考虑的问题 三、微服务重要部件 微服务基本能力 服务注册中心 2.1 zookeeper服务注册和发现 负载均衡 3.1 负载均衡的常见策略 容错 4.1 容错策略 熔断 限流和降级 SLA API网关 多级缓存 超时和重试 线程池隔离 降级和限流 网关监控和统计 前言 到底什么是微服务?为什么要用微服务?微服务主要来做一些什么?微服务有哪些优势?什么样的服务属于微服务?本文所有资料来源网络,我只是整理一下,总结一下。仅供参考。 一、微服务介绍 1.什么是微服务 在介绍微服务时,首先得先理解什么是微服务,顾名思义,微服务得从两个方面去理解,什么是"微"、什么是"服务", 微,狭义来讲就是体积小、著名的"2 pizza 团队"很好的诠释了这一解释