1.客户端通过Distrbuted FileStstemmuo模块向namenode请求上传;
2.检验文件是否存在,如果存在就会报目录存在这个错误,如果不存在则相应可以上传文件;
3.客户端请求第一个Block上传到DataNode上;
4.返回dn1,dn2,dn3节点,表示这三个节点可以存储数据;
5.客户端通过调用FSDataOutPutStream模块请求dn1上传数据,dn1收到请求会继续调用dn2,然后dn2调用dn3,将这个通讯管道建立完成;
6.dn1,dn2,dn3逐级应答客户端;
7.客户端开始往dn1收到第一个Block,以Packet为单位,dn1收到一个Packet就会传给dn2,dn2传给dn3;
8.告诉namenode传输完成;