网络端口

TCP协议

旧街凉风 提交于 2019-11-26 00:26:32
概述 传输控制协议 (英语: T ransmission C ontrol P rotocol,缩写: TCP )是一种面向连接的、可靠的、基于 字节流 的 传输层 通信协议,由 IETF 的 RFC 793 定义。在简化的计算机网络 OSI模型 中,它完成第四层传输层所指定的功能。 用户数据报协议 (UDP)是同一层内另一个重要的传输协议。 在因特网协议族( Internet protocol suite)中,TCP层是位于 IP 层之上, 应用层 之下的中间层。不同主机的应用层之间经常需要可靠的、像 管道 一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段(通常受该计算机连接的网络的数据链路层的 最大传输单元 (MTU)的限制)。之后TCP把结果包传给IP层,由它来透过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的 确认信息 (ACK);如果发送端实体在合理的 往返时延 (RTT)内未收到确认,那么对应的数据包就被假设为 已丢失 并进行重传。TCP用一个 校验和 函数来检验数据是否有错误,在发送和接收时都要计算校验和。 简介

网络相关的命令工具研究报告

江枫思渺然 提交于 2019-11-26 00:25:27
iptables 是什么? iptables是Linux防火墙的基础,iptables是基于规则的防火墙系统,通常预先安装在用于控制传入和传出数据包的Unix操作系统上(Ubuntu 16.04已预装)。默认情况下,iptables在运行时并没有任何规则,我们可以在其中创建,添加,编辑规则。 虽然 netfilter/iptables IP 数据包过滤系统被称为单个实体,但它实际上由两个组件netfilter 和 iptables 组成。 netfilter 组件也称为内核空间(kernelspace),是内核的一部分,由一些数据包过滤表组成,这些表包含内核用来控制数据包过滤处理的规则集。iptables 组件是一种工具,也称为用户空间(userspace)。 iptables是一种IP过滤器,IP过滤器主要在TCP / IP参考堆栈的第2层(网络层)中运行。但是,iptables也可以在第3层(传输层)中工作,而今天的大多数IP过滤器实际上都具有该功能。但是根据定义,IP过滤器在第二层工作。如果IP过滤器实施严格遵循该定义,换句话说,它将只能基于其IP数据包的首部(头部)(源和目标地址,TOS / DSCP / ECN,TTL,协议等)来过滤数据包。但是,由于Iptables实现对此定义的要求不是很严格,因此它还能够根据位于数据包中更深的其他报头(传输层)(TCP,UDP等

Dockerfile二进制分离部署LNMP(Centos7)

浪尽此生 提交于 2019-11-25 23:38:44
Dockerfile常用指令: 1、FROM :构建镜像基于哪个镜像 例如:FROM centos 2、MAINTAINER :镜像维护者姓名或邮箱地址 例如:MAINTAINER Sun qiu ming 3、RUN: 构建镜像时运行的shell命令 例如: RUN [ "yum","install","httpd"] RUN yum -y install httpd 4、CMD :运行容器时执行的shell命令 例如: CMD ["/bin/bash"] 5、EXPOSE声明容器的服务端口 例如:EXPOSE 80 443 EXPOSE 声明端口 格式为 EXPOSE <端口1> [<端口2>...]。 EXPOSE 指令是声明运行时容器提供服务端口,这只是一个声明,在运行时并不会因为这个声明应用就会开启这个端口的服务。在 Dockerfile 中写入这样的声明有两个好处,一个是帮助镜像使用者理解这个镜像服务的守护端口,以方便配置映射;另一个用处则是在运行时使用随机端口映射时,也就是 docker run -P 时,会自动随机映射 EXPOSE 的端口。 要将 EXPOSE 和在运行时使用 -p <宿主端口>:<容器端口> 区分开来。-p,是映射宿主端口和容器端口,换句话说,就是将容器的对应端口服务公开给外界访问,而 EXPOSE 仅仅是声明容器打算使用什么端口而已

了解vSphere中的BPDU筛选器功能

馋奶兔 提交于 2019-11-25 23:28:21
本文介绍并提供了有关vSphere 5.1 Distributed Switch中新BPDU筛选器功能的示例。 一、什么是bpdu 桥接协议数据单元(BPDU)是在物理交换机之间交换的帧,作为生成树协议(STP)的一部分。STP用于防止网络中的环路,通常在物理交换机上启用。当物理交换机端口上的链路上升时,STP协议开始计算和BPDU交换以确定端口是否应处于转发或阻塞状态。桥接协议数据单元(BPDU)帧跨物理交换机端×××换以识别根网桥并形成树形拓扑。VMware的vSwitch不支持STP,也不参与BPDU交换。如果在vSwitch上行链路上接收到BPDU帧,则丢弃该帧。同样,VMware vSwitch不会生成BPDU帧。 注意:VMware vSwitches(标准和分布式)无法形成循环,因为无法在OSI层的第2层将两个虚拟交换机连接在一起。因此,没有生成树协议功能已合并到虚拟交换机中。 识别根网桥并查找交换机端口是处于转发状态还是阻塞状态的STP过程大约需要30到50秒。在此期间,无法从这些交换机端口传递数据。如果连接到端口的服务器长时间无法通信,则在其上运行的应用程序将超时。要避免服务器上出现超时问题,最佳做法是在连接服务器NIC的交换机端口上启用端口快速配置。端口快速配置将物理交换机端口立即置于STP转发状态。有关详细信息

大数据分析技术与实战之 Spark Streaming

蹲街弑〆低调 提交于 2019-11-25 22:53:31
Spark是基于内存的大数据综合处理引擎,具有优秀的作业调度机制和快速的分布式计算能力,使其能够更加高效地进行迭代计算,因此Spark能够在一定程度上实现大数据的流式处理。 随着信息技术的迅猛发展,数据量呈现出爆炸式增长趋势,数据的种类与变化速度也远远超出人们的想象,因此人们对大数据处理提出了更高的要求,越来越多的领域迫切需要大数据技术来解决领域内的关键问题。在一些特定的领域中(例如金融、灾害预警等),时间就是金钱、时间可能就是生命!然而传统的批处理框架却一直难以满足这些领域中的实时性需求。为此,涌现出了一批如S4、Storm的流式计算框架。Spark是基于内存的大数据综合处理引擎,具有优秀的作业调度机制和快速的分布式计算能力,使其能够更加高效地进行迭代计算,因此Spark能够在一定程度上实现大数据的流式处理。 Spark Streaming是Spark上的一个流式处理框架,可以面向海量数据实现高吞吐量、高容错的实时计算。Spark Streaming支持多种类型数据源,包括Kafka、Flume、trwitter、zeroMQ、Kinesis以及TCP sockets等,如图1所示。Spark Streaming实时接收数据流,并按照一定的时间间隔将连续的数据流拆分成一批批离散的数据集;然后应用诸如map、reducluce、join和window等丰富的API进行复杂的数据处理

华为设备二层交换技术——MSTP协议详解

柔情痞子 提交于 2019-11-25 22:52:19
前面提到的STP协议以及Cisco的私有协议PVST+都属于单生成树(SST)协议,也就是对于支持多VLAN的设备只能运行单一的生成树。可以参考博文: Cisco设备二层交换技术——STP协议详解 MSTP是IEEE 802.1s中提出的一种STP和VLAN结合使用的新协议,它既继承了RSTP端口快速迁移的优点,又解决了RSTP中不同VLAN必须运行在同一棵生成树上的问题。接下来我们详细了解一下MSTP协议。 MSTP协议是一个公有的生成树协议,在实际生产环境中得到了广泛的应用。 一、MSTP概述 传统的生成树只能运行一个实例,且收敛速度慢,RSTP在传统STP基础上通过改进达到了加速网络拓补收敛的目的,但是目前依然存在一些缺陷。由于STP和RSTP在整个局域网中,所有的VLAN共享一个生成树实例,因此无法实现基于VLAN的负载均衡,网络环境稳定状态下备份链路始终不能转发数据流量,造成带宽的浪费!如图: 当交换机S1为根网桥时,S2和S3之间的链路将处于阻塞状态,不能转发任何流量。即使网络出现拥塞时,S2和S3之间的链路也不可以被使用,造成资源的浪费! 学过Cisco的朋友都知道Cisco的PVST技术是一种基于VLAN的生成树技术。每个VLAN运行一个生成树,可以重复使用所有的链路,但是当企业生产环境中,有很多VLAN(比如100个VLAN时)

ethereum入门--Go Ethereum环境搭建

…衆ロ難τιáo~ 提交于 2019-11-25 22:49:39
Go Ethereum简介 Go Ethereum是以太坊协议的三个原始实现(以及C ++和Python)之一。 它是用Go编写的,完全开放源代码并在GNU LGPL v3下获得许可。 Go Ethereum可以作为独立的客户端Geth使用,您可以将其安装在任何操作系统上,也可以作为可以嵌入Go,Android或iOS项目的库。 搭建基于以太坊go-ethereum的环境 1.安装go-ethereum 在这里只介绍在Ubuntu环境下的源码安装,执行以下操作 安装Go环境 可以参考go官方安装文档 https://golang.org/doc/install 下载go-ethereum源代码: go get -d github.com/ethereum/go-ethereum 编译生成可执行文件,可执行文件在$GOPATH/bin目录下 go install github.com/ethereum/go-ethereum/cmd/geth 2.启动go_ethereum 连接以太坊网络启动方式(以太坊网络上的完整节点) geth缺省会连接到以太坊官方的正式网络上去,这个正式网络里的区块目前已经有多达500多万块,而且里面跑的都是要花真金白银的交易 $ geth console 该命令将: 在快速同步模式下启动geth(默认情况下,可以使用--syncmode标志进行更改)

Zookeeper+Kafka集群搭建

喜你入骨 提交于 2019-11-25 22:44:44
Zookeeper集群搭建 Kafka集群是把状态保存在Zookeeper中的,首先要搭建Zookeeper集群。 1、软件环境 (3台服务器-我的测试) 192.168.30.204 server1 192.168.30.205 server2 192.168.30.206 server3 1-1、Linux服务器一台、三台、五台、(2*n+1),Zookeeper集群的工作是超过半数才能对外提供服务,3台中超过两台超过半数,允许1台挂掉 ,是否可以用偶数,其实没必要。 如果有四台那么挂掉一台还剩下三台服务器,如果在挂掉一个就不行了,这里记住是超过半数。 1-2、zookeeper是用java写的所以他的需要JAVA环境,java是运行在java虚拟机上的 1-3、Zookeeper的稳定版本Zookeeper 3.4.6版本 2、配置&安装Zookeeper 下面的操作是:3台服务器统一操作 2-1、安装Java (可选) 卸载已有的open jdk,安装最新版本的java jdk # rpm -qa | grep jdk java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.i686 # yum -y remove java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.i686 remove java-1.6.0

Linux测试TCP通信

最后都变了- 提交于 2019-11-25 22:25:38
传输控制协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。 百度百科 在TCP/IP中,TCP和UDP是最主要的传输层协议,也是应用希望进行网络通信时直接接触的协议。现在就来尝试一下在Linux上实现TCP-Server和TCP-Client的双向通信。 系统环境:Ubuntu 18.04/vim/g++/make 本文假设读者有一定C基础,基本了解TCP协议。 要先实现在Linux的C程序运行,首先要在Linux系统上安装C编译环境,这里使用vim编写,g++编译,makefile构建。 TCP/IP协议是现代网络通信的核心协议,在网络通信时,由于各种各样的原因,如交换设备掉电、网络堵塞、主机宕机等,都可能造成数据传输的失败。这时候保证数据能够完整的到达目的地就尤为重要。这时候就需要TCP协议的握手机制来实现可靠的通信。 所谓握手机制就是在正式开始数据传输之前进行一些传输参数的协商,建立连接后再传送数据就可以对每一组数据进行确认,以保证可靠传输。 TCP协议提供了端口号的概念,每台主机共有65536个端口分别编号0~65535,。每个端口对应一个进程,如最常见的80代表HTTP连接,21代表FTP服务,22代表SSH服务,3389 代表Windows远程登录等等

企业网络中利用FTP协议来实现文件的上传和下载

蹲街弑〆低调 提交于 2019-11-25 21:49:26
FTP技术的概念 文件传输协议,FTP是用来传送文件的协议。使用FTP实现远程文件传输的同时,还可以保证数据传输的可靠性和高效性 FTP协议的作用:可以在服务器上面下载文件 或者在本地上传文件到服务器里面 FTP的控制层面和数据层面 客户端(client)和服务器(server):简称为C/S模式 控制平面和转发平面(数据平面) 控制平面:主要保证服务器和客户端之间通信,使用的是TCP的21号端口 客户端----->>>>>服务器进行连接 TCP 源端口 随机 目标端口 21 转发平面:可以称作为数据平面,主要保证服务器和客户端之间传输数据 主动模式和被动模式 主动模式(服务器主动访问客户端,可以比喻成你们做头等舱) TCP 20号端口 服务器---->>>客户端进行连接 被动模式(客户端主动服务器,可以比喻成你们做经济舱) TCP 随机端口 客户端---->>>服务器进行连接 FTP的工作模式 主动模式 TCP三次握手的建立 控制连接(输入账户名和密码):客户端---服务器发起连接 Sport:随机 Dport:21端口 会有客户端---服务器发送一个port消息 该消息里面会携带a.b.c.d.e.f(其中a.b.c.d就是客户端IP地址 客户端端口号就是256乘以e+f) TCP三次握手的建立 数据平面(执行我们上传和下载的动作):服务器---客户端发起连接 Sport