通信原理

K8s系列-Kubeedge实现原理

大城市里の小女人 提交于 2020-04-08 08:55:00
感谢分享原文- http://bjbsair.com/2020-04-03/tech-info/29914.html Kubeedge除了在kubernetes的方面做了各种异步通信通道,保障offline后的业务连续性之外;还定义了一系列的设备抽象,用来管理边缘设备。而且,其v1.0版本正朝着边缘端服务网格,以及函数式计算等方向发展。 官方文档: https://docs.kubeedge.io/en/latest/ 架构 整体架构图比较明了,在不考虑edgesite的情况下,其架构分为了云端和边缘端。其实可以理解为kubernetes的管理侧和kubelet节点侧(对应edge端)。但是请注意,这里的场景是边缘计算,意味着edge端的网络环境难以保障。 云边通信 于是就衍生出了cloud端的cloud Hub与edge端的Edge Hub。这两个模块之间通过websocket或者quic通信,相当于建立了一条底层通信隧道,供k8s和其他应用通信。当然,使用什么协议通信不是重点,重点是如何保障当着之间的链路都无法保障的时候,业务不受到影响,这就是MetaManager的要解决的问题了。 CloudHub 前面提到cloud端的cloudHub就是一个隧道的server端,用于大量的edge端基于websocket或者quic协议连接上来;没错,这货才是正儿八经的二传手

20199329 2019-2020-2 《网络攻防实践》第五周作业

戏子无情 提交于 2020-03-30 16:26:07
《网络攻防实践》第五周作业 一、前言 这个作业属于哪个课程: https://edu.cnblogs.com/campus/besti/19attackdefense 这个作业的要求在哪里: https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10553 我在这个课程的目标是:学习网络攻防相关知识,提升专业技能 这个作业在哪个具体方面帮助我实现目标:学习TCP/IP网络协议攻击的原理和实践 二、知识点总结 1.网络协议攻击及其基本概念 学习网络安全、信息安全首先应当铭记心中的是五大安全属性:机密性,完整性,可用性、真实性和不可抵赖性。我们所有的攻击或者防守都是围绕这五大安全属性来展开的。那么作为攻击方来说,通常有以下几种攻击模式: 截获:以嗅探与监听技术为基础的被动攻击模式,获取网络通信双方的通信信息内容。 中断:以拒绝服务技术为基础的主动攻击模式,使网络通信和会话无法进行。 伪造:以欺骗为基础的主动攻击模式,假冒网络通信方的身份,欺骗通信对方达到恶意目的。 篡改:包括数据包篡改,中间人攻等技术的击主动攻击模式,网络通信工程的信息内容进行篡改,使得通信一方或双方接收到虚假消息。 但是作为一个攻击者,我们还缺少了安全缺陷,有了安全缺陷,我们才可以实施攻击。通常有以下几种TCP/IP网络协议栈安全缺陷与攻击技术:

ssl-原理

元气小坏坏 提交于 2020-03-26 21:24:30
----------------------------------------------------SSL/TLS 介绍----------------------------------------------------------------------------------- 一: SSL/TLS 介绍 SSL 是安全套接层 (secure sockets layer), TLS 是 SSL 的继任者,叫传输层安全 (transport layer security)。 在明文的上层和 TCP 层之间加上一层加密,这样就保证上层信息传输的安全。如 HTTP 协议是明文传输,加上 SSL 层之后,就有了雅称 HTTPS。它存在的唯一目的就是保证上层通讯安全的一套机制。 SSL协议实现的安全机制包括: 数据传输的机密性:利用对称密钥算法对传输的数据进行加密。 身份验证机制:基于证书利用数字签名方法对服务器和客户端进行身份验证,其中客户端的身份验证是可选的。 消息完整性验证:消息传输过程中使用MAC算法来检验消息的完整性。为了避免网络中传输的数据被非法篡改,SSL利用基于MD5或SHA的MAC算法来保证消息的完整性。 ----------------------------------------------------SSL/TLS 版本-----------------

socket通信原理

China☆狼群 提交于 2020-03-26 16:50:35
1、什么是socket 我们知道进程通信的方法有管道、命名管道、信号、消息队列、共享内存、信号量,这些方法都要求通信的两个进程位于同一个主机。但是如果通信双方不在同一个主机又该如何进行通信呢?在计算机网络中我们就学过了tcp/ip协议族,其实使用tcp/ip协议族就能达到我们想要的效果,如下图(图片来源于《tcp/ip协议详解卷一》第一章1.3)           、                            图一 各协议所处层次 当然,这样做固然是可以的,但是,当我们使用不同的协议进行通信时就得使用不同的接口,还得处理不同协议的各种细节,这就增加了开发的难度,软件也不易于扩展。于是UNIX BSD就发明了socket这种东西,socket屏蔽了各个协议的通信细节,使得程序员无需关注协议本身,直接使用socket提供的接口来进行互联的不同主机间的进程的通信。这就好比操作系统给我们提供了使用底层硬件功能的系统调用,通过系统调用我们可以方便的使用磁盘(文件操作),使用内存,而无需自己去进行磁盘读写,内存管理。socket其实也是一样的东西,就是提供了tcp/ip协议的抽象,对外提供了一套接口,同过这个接口就可以统一、方便的使用tcp/ip协议的功能了。百说不如一图,看下面这个图就能明白了。                                         

AT24C0X I2C通信原理

独自空忆成欢 提交于 2020-03-17 07:53:14
/********************************************************************** * AT24C0X I2C通信原理 * 说明: * 之前接触AT24C02用的相对比较多,这次接触到AT24C08,存储量大了 * 数据存储方式也就不一样,另外就是之前在Linux下面有标准AT24系列驱动, * 目前的FPGA需要编写操作PCIe控制I2C Master驱动,对EEPROM进行存取操作。 * * 2018-11-7 深圳 宝安西乡 曾剑锋 *********************************************************************/ 一、参考文档 1. AT24C0X Datasheet https://www.mouser.com/ds/2/268/atmel_doc0180-1065439.pdf 2. AT24C02/04/08 地址理解 https://blog.csdn.net/qq_38405680/article/details/81360604 3. altera I2C master driver https://github.com/torvalds/linux/blob/master/drivers/i2c/busses/i2c-altera.c 4.

alibaba远程调用框架dubbo原理

隐身守侯 提交于 2020-03-11 04:32:51
alibaba有好几个分布式框架,主要有:进行远程调用(类似于RMI的这种远程调用)的(dubbo、hsf),jms消息服务(napoli、notify),KV数据库(tair)等。这个框架/工具/产品在实现的时候,都考虑到了容灾,扩展,负载均衡,于是出现一个配置中心(ConfigServer)的东西来解决这些问题。 基本原理如图: 在我们的系统中,经常会有一些跨系统的调用,如在A系统中要调用B系统的一个服务,我们可能会使用RMI直接来进行,B系统发布一个RMI接口服务,然后A 系统就来通过RMI调用这个接口,为了解决容灾,扩展,负载均衡的问题,我们可能会想很多办法,alibaba的这个办法感觉不错。 本文只说dubbo,原理如下: ConfigServer 配置中心,和每个Server/Client之间会作一个实时的心跳检测(因为它们都是建立的Socket长连接),比如几秒钟检测一次。收集每个Server提供的服务的信息,每个Client的信息,整理出一个服务列表,如: serviceName serverAddressList clientAddressList UserService 192.168.0.1,192.168.0.2,192.168.0.3,192.168.0.4 172.16.0.1,172.16.0.2 ProductService 192.168.0.3

QQ通信原理概述

不羁的心 提交于 2020-03-10 04:31:38
一、登陆。 不管UDP还是TCP,最终登陆成功之后,QQ都会有一个TCP连接来保持在线状态。这个TCP连接的远程端口一般是80,采用UDP方式登陆的时候,端口是8000。因此,假如你所在的网络开放了80端口(80端口是最常用端口。。就是通常访问Web的端口,禁掉它的话,你的网络对你来说价值已经不大了),但没有屏蔽腾讯的服务器IP,恭喜你,你是可以登陆成功QQ的。 二、聊天消息通信。 采用UDP协议,通过服务器中转方式。因此,现在的IP侦探在你仅仅跟对方发送聊天消息的时候是无法获取到IP的。大家都知道,UDP协议是不可靠协议,它只管发送,不管对方是否收到的,但它的传输很高效。但是,作为聊天软件,怎么可以采用这样的不可靠方式来传输消息呢?于是,腾讯采用了上层协议来保证可靠传输:如果客户端使用UDP协议发出消息后,服务器收到该包,需要使用UDP协议发回一个应答包。如此来保证消息可以无遗漏传输。之所以会发生在客户端明明看到“消息发送失败”但对方又收到了这个消息的情况,就是因为客户端发出的消息服务器已经收到并转发成功,但客户端由于网络原因没有收到服务器的应答包引起的。 三、文件/自定义表情传送。 大家都知道,QQ可以传送文件,可以发送自定义表情。先说官方表情。官方表情实际发送的是命令字,而没有发送表情。客户端收到命令字后,会自动解释为对应的表情。因此,QQ2008正式版的客户端发出的新版表情

Socket通信原理

拟墨画扇 提交于 2020-02-28 07:37:22
什么是Socket? Socket的中文翻译过来就是“套接字”。套接字是什么,我们先来看看它的英文含义:插座。 Socket就像一个电话插座,负责连通两端的电话,进行点对点通信,让电话可以进行通信,端口就像插座上的孔,端口不能同时被其他进程占用。而我们建立连接就像把插头插在这个插座上,创建一个Socket实例开始监听后,这个电话插座就时刻监听着消息的传入,谁拨通我这个“IP地址和端口”,我就接通谁。 实际上,Socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口,供应用层调用实现进程在网络中的通信。Socket起源于UNIX,在Unix一切皆文件的思想下,进程间通信就被冠名为文件描述符(file desciptor),Socket是一种“打开—读/写—关闭”模式的实现,服务器和客户端各自维护一个“文件”,在建立连接打开后,可以向文件写入内容供对方读取或者读取对方内容,通讯结束时关闭文件。 另外我们经常说到的 Socket所在位置 如下图: Socket通信过程 Socket保证了不同计算机之间的通信,也就是网络通信。对于网站,通信模型是服务器与客户端之间的通信。两端都建立了一个Socket对象,然后通过Socket对象对数据进行传输。通常服务器处于一个无限循环,等待客户端的连接。 一图胜千言,下面是 面向连接的TCP时序图 : 客户端过程

Linux 进程间通信方式和原理

孤街浪徒 提交于 2020-02-13 15:31:26
Linux 进程间通信方式和原理 进程间的通信方式 进程的概念 进程时操作系统的概念,每当我们执行一个程序时,对于操作系统来讲究创建了一个进程,在这个过程中,伴随着资源的分配和释放。可以认为进程时是一个程序的一次执行过程。 进程通信的概念 进程用户空间是相互独立的,一般而言是不能相互访问的。但很多情况下进程间需要相互通信,来完成系统的某项功能。进程通过与内核及其他进程之间的互相通信来协调它们的行为 进程通信的应用场景 数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几兆字节之间。 共享数据:多个进程想要操作共享数据,一个进程对共享数据的修改,别的进程应该立刻看到。 通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要通知父进程)。 资源共享:多个进程之间共享同样的资源。为了做到这一点,需要内核提供锁和同步机制。 进程控制:有些进程希望完全控制另一个进程的执行,此时控制进程希望能够拦截另一个进程的所有陷入和异常,并能够及时知道它的状态改变。 进程通信的方式 管道(pipe) 普通管道:通常有两种限制,一是单向传输,二是智能在父子或者兄弟进程间使用。 流管道:去除了第一种限制,为半双工,只能在父子或兄弟进程间使用,可以双向传输。 命令管道:去除了第二种限制,可以在许多并不相关的进程之间进行通信。 信息量

HTTPS原理01 -- SSL/TLS介绍

时光毁灭记忆、已成空白 提交于 2020-02-05 05:20:29
https=http+ssl 顾名思义,https是在http的基础上加上了SSL保护壳,信息的加密过程就是在SSL中完成的 SSL证书的定义:SSL证书是由专门的权威的数字证书颁发机构在验证一个域名的信息之后所发行的数字网络证书,它可以很好地维护网络信息的安全,防止这些信息被第三方所截取或是窃听。 ssl认证指的是客户端到服务器端的认证,它主要是提供对用户以及服务器的认证,对传送的数据进行加密和隐藏,它能够确保数据在传送过程当中不被改变,对于数据的加密性、数据的完整性有一定保障。 https ssl证书颁发后都有一个有效期。有时证书没过期都会出现无效的情况,那可能是电脑系统的时间不对会导致证书过期,因为https ssl证书颁发都有颁发日期和截止日期的。电脑系统当中的时间在证书有效时间之外,就有可能导致浏览器提示网站安全证书过期。 关于SSL证书原理,其实在一个网站部署了SSL证书之后,就相当于为这个网址配置两把密钥,一把叫做公钥,另一把叫做私钥。公钥的作用就是在用户将自己的信息留在这个网站时为这些信息加锁的钥匙,加了锁之后,这些信息就不能被轻易的读取,除非有专门的钥匙打开。而这把打开这个锁的钥匙,就是另一把密钥,也就是私钥。只有这把对应的私钥才可以打开公钥部下的锁,因此在这两把密钥的作用下,可以使客户的信息数据在网站中安全的传入并安全的浏览,不会被他人截取。 一、作用