通信
文章平均质量分 87
VCHH
这个作者很懒,什么都没留下…
展开
-
Zero Copy 简介
许多web应用都会向用户提供大量的静态内容,这意味着有很多data从硬盘读出之后,会原封不动的通过socket传输给用户。这种操作看起来可能不会怎么消耗CPU,但是实际上它是低效的:kernal把数据从disk读出来,然后把它传输给user级的application,然后application再次把同样的内容再传回给处于kernal级的socket。这种场景下,application实际上只是作为转载 2016-05-27 16:06:27 · 413 阅读 · 0 评论 -
Big Endian 和 Little Endian
Big Endian 和 Little Endian一、字节序来自:http://ayazh.gjjblog.com/archives/1058846/谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用big endian方式存储数据,而x86系列则采用little endian方式存储转载 2016-06-03 11:06:51 · 450 阅读 · 0 评论 -
TCP与UDP的区别
CP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。UDP(User Datagram Protocol) UDP不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且它是将应用程序发来的数据在收到的那一刻,立刻按照原样发送到网络上的一种机制。 即使是出现网络拥堵的情况下,转载 2016-06-03 14:19:31 · 480 阅读 · 0 评论 -
wireshark 实用过滤表达式(针对ip、协议、端口、长度和内容)
首先说几个最常用的关键字,“eq” 和 “==”等同,可以使用 “and” 表示并且,“or”表示或者。“!" 和 "not” 都表示取反。 一、针对wireshark最常用的自然是针对IP地址的过滤。其中有几种情况: (1)对源地址为192.168.0.1的包的过滤,即抓取源地址满足要求的包。 表达式为:ip.src == 192.168.0.1 (转载 2016-06-03 14:32:16 · 374 阅读 · 0 评论 -
使用 Netty 进行 UDP 网络编程
使用 Netty 进行 UDP 网络编程 在正式开始之前,首先介绍一下TCP和UDP协议。对于做过网络开发的朋友来说,这两个协议应该都不陌生,在此仅摘录网上对两个协议的介绍给大家,仅供参考。TCP与UDP区别 TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重转载 2016-06-03 16:03:18 · 1392 阅读 · 0 评论 -
异步,同步,阻塞与非阻塞
序号问题1什么是同步?2什么是异步?3什么是阻塞?4什么是非阻塞?5什么是同步阻塞?6什么是同步非阻塞?7什么是异步阻塞?8什么是异步非阻塞?在弄清楚上面的几个问题之前,我们首先得明白什么是同步,异步,阻塞,非阻塞,只有这几个单个概念理解清楚了转载 2016-06-03 18:08:53 · 485 阅读 · 0 评论 -
MAC 多版本JDK并存解决方案
1.sudo vi .bash_profile 2.填入如下内容# JDK 6 export JAVA_6_HOME=`/usr/libexec/java_home -v 1.6`原创 2016-06-04 16:02:13 · 702 阅读 · 0 评论 -
Interllij protobuf 环境配置
来自:http://zhuliangliang.me/2015/01/12/protobuf_in_java/Java 项目中集成 Protocol Buffers最近在接入某厂广告系统,需要使用 Protobuf Buffers(以下简称 PB)来进行数据交换,而在此之前,我对 PB 一无所知,经历了版本冲突、插件无效等问题之后,总算成功在项目中集成 PB。下面主要介绍 PB转载 2016-06-04 17:12:30 · 8439 阅读 · 0 评论 -
websocket 断线重连
摘要websocket reconnectwebsocket是html5发布之后出现的一种新技术,说它是新技术,其实也不是多新的技术了,因为毕竟也有2-3年了,但是找了很多国内的实例,缺发现不多,不知道是它不好用呢,还是说这种技术原来就有缺陷呢,咱们暂且不说,今天我们就来介绍一下websocket的断线重连,,,,这里先提供一个类库,https://github.com/j原创 2016-07-14 13:28:11 · 9217 阅读 · 2 评论 -
SSL和SSH有什么区别
ssl是通讯链路的附加层。可以包含很多协议。https, ftps, .....ssh只是加密的shell,最初是用来替代telnet的。通过port forward,也可以让其他协议通过ssh的隧道而起到加密的效果。SSL是一种国际标准的加密及身份认证通信协议,您用的浏览器就支持此协议。SSL(Secure Sockets Layer)最初是由美国Netscape公司研究出来的,后来成为转载 2016-06-22 09:55:21 · 500 阅读 · 0 评论 -
log4j.properties 的使用详解
log4j:WARN No appenders could be found for logger (com.mind.core.db.impl.CacheService).log4j:WARN Please initialize the log4j system properly.log4j:WARN See http://logging.apache.org/log4j/1.2/faq转载 2016-06-22 11:09:48 · 608 阅读 · 0 评论 -
Log4j 日志文件Linux/Mac/Windows通用存放位置设置
log4j1/log4j2中category的配置以及log的输出位置(windows和linux通用的log输出位置)分类:服务器技术|标签:Windows|日期: 2015-08-13 02:00:10一、场景和需求假设我现在有3个独立的用project(暂时用maven关联起来,当然也可以不用maven),一个是提供公共服务的infrastructure,一个是提供存储的pers转载 2016-06-22 13:25:37 · 6803 阅读 · 0 评论 -
log4j配置祥解
第一步:加入log4j-1.2.8.jar到lib下。第二步:在CLASSPATH下建立log4j.properties。内容如下:l###setloglevels###log4j.rootLogger=info,stdout,D,E###输出到控制台###log4j.appender.stdout = org.apache.log4j.ConsoleAppende转载 2016-06-22 14:31:53 · 423 阅读 · 0 评论 -
UDP丢包及无序的问题
最近在做一个项目,在这之前,做了个验证程序.发现客户端连续发来1000个1024字节的包,服务器端出现了丢包现象.纠其原因,是服务端在还未完全处理掉数据,客户端已经数据发送完毕且关闭了.有没有成熟的解决方案来解决这个问题.我用过sleep(1),暂时解决这个问题,但是这不是根本解决办法,如果数据量大而多,网络情况不太好的话,还是有可能丢失. 你试着用阻塞模式吧...转载 2016-10-11 17:32:53 · 980 阅读 · 0 评论 -
UDP 丢包原因
自己在做UDP传输时遇到的问题,接收端没设置缓存,结果总是丢包。看到这篇文章设置了一下接收缓存就好[cpp] view plain copy int nRecvBuf=32*1024;//设置为32K setsockopt(s,SOL_SOCKET,SO_RCVBUF,(const char*)&nRecvBuf,sizeof(int));转载 2016-10-11 17:35:01 · 656 阅读 · 0 评论 -
WebSocket(1)-- WebSocket API简介
[本文属原创,如有转载,请注明出处http://blog.csdn.net/yl02520/article/]WebSocket是html5新增加的一种通信协议,目前流行的浏览器都支持这个协议,例如Chrome,Safari,Firefox,Opera,IE等等,对该协议支持最早的应该是chrome,从chrome12就已经开始支持,随着协议草案的不断变化,各个浏览器对协议的实现也在不停的转载 2016-10-14 21:32:13 · 359 阅读 · 0 评论 -
WebSocket(3)-- WebSocket协议简介
[本文属原创,如有转载,请注明出处http://blog.csdn.net/yl02520/article/]WebSocket协议是一种双向通信协议,它建立在TCP之上,同http一样通过TCP来传输数据,但是它和http最大的不同有两点:1.WebSocket是一种双向通信协议,在建立连接后,WebSocket服务器和Browser/UA都能主动的向对方发送或接收数据,就像Socket转载 2016-10-14 21:43:39 · 373 阅读 · 0 评论 -
XMLHttp java服务端与 js客户端通讯实现二进制流收发
XMLHttp java服务端与 js客户端通讯实现二进制流收发js客户端:var xhr = cc.loader.getXMLHttpRequest();xhr.responseType = "arraybuffer";var that = this;xhr.onreadystatechange = function () { if (xhr.readyState原创 2016-06-03 10:54:02 · 1653 阅读 · 0 评论 -
从Http的连接到WebSocket
1、HTTP协议对长连接的支持以及各浏览器的支持情况http://blog.csdn.net/fenglibing/article/details/71002222、WEB客户端与服务端信息交互的几种方式1)、Flash XMLSocket入门示例:http://en.wikipedia.org/wiki/XMLSocket不足:a)、客户端必须安装 Flash 播转载 2016-06-02 17:53:45 · 790 阅读 · 0 评论 -
netty 二进制简单通信
环境:netty版本4.0.36Finaljdk7服务端:1.App.javapackage com.mind.core;import com.mind.core.net.websocket.server.NettyServer;/** * Hello world! * */public class App { public static void原创 2016-05-25 19:30:01 · 6757 阅读 · 1 评论 -
mac parallels
http://www.zhinin.com/parallels_desktop-mac.html原创 2016-05-28 11:21:19 · 541 阅读 · 0 评论 -
10 个实用技巧,让 Finder 带你飞
Finder 是 Mac 电脑的系统程序,有的功能类似 Windows 的资源管理器。它是我们打开 Mac 首先见到的「笑脸」,有了它,我们可以组织和使用 Mac 里的几乎所有东西,包括应用程序、文件、文件夹、磁盘以及你网络上的共享磁盘,你同时可以通过它看到丰富的、高质量的文件预览。接下来笔者将和你分享自己使用 Finder 的一些心得,正所谓 10 个技巧,让 Finder 带你「飞」。转载 2016-05-28 14:01:49 · 2290 阅读 · 0 评论 -
XMLHTTP使用详解
XMLHTTP对象是Microsoft的MSXML开发包中带的一个用HTTP,XML协议访问web资源的对象. 从MSXML3.0开始出现. 它在AJAX技术中主要用来从其他网络资源获取信息,然后由javascript来更新页面中的部分内容.采用这种方法将页面可更新内容细化,不需要更新很少的内容而刷新整个页面. XMLHTTP对象的使用方法如下:1- 创建XMLHTTP对象,不同原创 2016-06-01 15:14:06 · 607 阅读 · 0 评论 -
XMLHttpRequest
XMLHttpRequest 对象用于在后台与服务器交换数据。什么是 XMLHttpRequest 对象?XMLHttpRequest 对象用于在后台与服务器交换数据。XMLHttpRequest 对象是开发者的梦想,因为您能够:在不重新加载页面的情况下更新网页在页面已加载后从服务器请求数据在页面已加载后从服务器接收数据在后台向服务器发送数据所有现代的浏览器都支持 XM原创 2016-04-22 10:38:23 · 706 阅读 · 0 评论 -
HTTP及XMLHTTP状态代码一览
(一) HTTP 1.1支持的状态代码 100 Continue 初始的请求已经接受,客户应当继续发送请求的其余部分 101 Switching Protocols 服务器将遵从客户的请求转换到另外一种协议 200 OK 一切正常,对GET和POST请求的应答文档跟在后面。 201 Created 服务器已经创建了文档,Location头给出原创 2016-06-01 16:24:00 · 739 阅读 · 0 评论 -
Http Post 二进制通信
客户端请求和接收(使用了httpclient4.3 和netty3.5)public static void httpPost11() { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost( "http://192.转载 2016-06-01 16:50:26 · 2539 阅读 · 0 评论 -
HttpClient josn网络传输(二进制的byte流)
现在越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源Client客户端:package httpjson;import java.io.ByteArrayInputStream;import java.io.InputStream;import net.sf.json.JSONObject;import org.apache.commons.htt转载 2016-06-01 16:59:01 · 5878 阅读 · 0 评论 -
Ajax跨域、Json跨域、Socket跨域和Canvas跨域等同源策略限制的解决方法
同源是指相同的协议、域名、端口,三者都相同才属于同域。不符合上述定义的请求,则称为跨域。相信每个开发人员都曾遇到过跨域请求的情况,虽然情况不一样,但问题的本质都可以归为浏览器出于安全考虑下的同源策略的限制。跨域的情形有很多,最常见的有Ajax跨域、Socket跨域和Canvas跨域。下面列举一些我们常见的跨域情形下,某些浏览器控制台给出的错误提示: FireFox下的提示:转载 2016-06-01 17:36:52 · 965 阅读 · 0 评论 -
HTTP的请求方法OPTIONS
HTTP请求方法并不是只有GET和POST,只是最常用的。据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法:OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE和CONNECT。官方定义OPTIONS方法是用于请求获得由Request-URI标识的资源在请求/响应的通信过程中可以使用的功能选项。通过这个方法,客户端可以在采取具体资源转载 2016-06-01 17:44:07 · 1275 阅读 · 0 评论 -
XMLHTTP中readState与status的状态值
status状态值:100 Continue101 Switching protocols200 OK201 Created202 Accepted203 Non-Authoritative Information204 No Content205 Reset Content206 Partial Content300 Multiple Choices原创 2016-06-01 19:07:48 · 2759 阅读 · 0 评论 -
详解XMLHttpRequest的跨域资源共享
详解XMLHttpRequest的跨域资源共享0x00 背景在Browser Security-同源策略、伪URL的域这篇文章中提到了浏览器的同源策略,其中提到了XMLHttpRequest严格遵守同源策略,非同源不可请求。但是,在实践当中,经常会出现需要跨域请求资源的情况,比较典型的例如某个子域名向负责进行用户验证的子域名请求用户信息等应用。以往,有一种解决方案是利用JSONP进转载 2016-06-01 20:19:56 · 1920 阅读 · 0 评论 -
关于application/x-www-form-urlencoded等字符编码的
关于application/x-www-form-urlencoded等字符编码的解释说明 在Form元素的语法中,EncType表明提交数据的格式 用 Enctype属性指定将数据回发到服务器时浏览器使用的编码类型。 下边是说明: application/x-www-form-urlencoded:窗体数据被编码为名称/值对。这是标准的编码格式。 multipart/form-data:窗体转载 2016-06-01 20:52:41 · 1209 阅读 · 0 评论 -
charles使用教程指南
charles使用教程指南0x01 前言:Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!下面来详细介绍下这款强大好用的抓包工具。0x02 下载与安装首先是工具下载和安装 首先需要下载java的运行环境支持(一般用burp的人肯定也都有装java环境)。装好java环转载 2016-06-02 10:20:56 · 1503 阅读 · 0 评论 -
content-type
http://tool.oschina.net/commons原创 2016-06-02 10:39:57 · 364 阅读 · 0 评论 -
xmlhttp 收发二进制数据 (Sending and Receiving Binary Data)
Receiving binary data using JavaScript typed arraysThe responseType property of the XMLHttpRequest object can be set to change the expected response type from the server. Possible values are the e原创 2016-06-02 14:22:50 · 3682 阅读 · 0 评论 -
WebSocket(2)--为什么引入WebSocket协议
WebSocket协议是一种双向通信协议,它建立在TCP之上,同http一样通过TCP来传输数据,但是它和http最大的不同有两点:1.WebSocket是一种双向通信协议,在建立连接后,WebSocket服务器和Browser/UA都能主动的向对方发送或接收数据,就像Socket一样,不同的是WebSocket是一种建立在Web基础上的一种简单模拟Socket的协议;2.WebSocket需要通转载 2016-10-14 21:48:58 · 415 阅读 · 0 评论