zoukankan      html  css  js  c++  java
  • atitit.网络文件访问协议.unc smb nfs ftp http的区别

    atitit.网络文件访问协议.unc smb nfs ftp http的区别

     

     

     

    1网络文件访问协议1

    2NETBios协议  2

    3SMBServer Message Block2

    3.1. Win访问smb2

    3.2. Java访问smb2

    3.2.1. jcifs/jcifs-1.3.8.jar.zip( 366 k)2

    3.2.2. Jftp也可以了3

    4Unc路径3

    4.1. Win访问Unc4

    4.2. Java访问Unc4

    5NFS协议4

    5.1. Win访问nfs5

    5.2. Java访问nfs5

    5.2.1. jnex-4.3.jar (cant)5

    5.2.2. Use jftp5

    6Wefnfs,http ,ftp7

    7Potplayer访问smb nfs ftp http7

    8参考7

     

     

     

    1. 网络文件访问协议

     

     

    从 Windows 95 开始,Microsoft Windows 操作系统(operating system)都包括了客户机和服务器 SMB 协议支持。Microsoft 为 Internet 提供了 SMB 的开源版本,即通用 Internet 文件系统 (CIFS)。与现有 Internet 应用程序如文件传输协议(FTP)相比, CIFS 灵活性更大。对于 UNIX 系统,可使用一种称为 Samba 的共享软件

     

     

    常用的网络访问协议有http,ftp,smb,nfs等。。

     

    2. NETBios协议 

    Netbios (网络基本输入/输出系统)最初由 IBMSytek 作为API开发,使用户软件能使用局域网的资源。自从诞生,Netbios成为许多其他网络应用程序的基础。严格意义上,Netbios 是接入网络服务的接口标准。 
      Netbios 原来是作为THE网络控制器为 IBM 局域网设计的,是通过特定硬件用来和网络操作系统 连接的软件层。Netbios经扩展,允许程序使用Netbios接口来操作IBM令牌环结构。Netbios 已被公认为工业标准,通常参照 Netbios-compatible LANs

     

    作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

    转载请注明来源: http://blog.csdn.net/attilax

     

    3. SMBServer Message Block

    通信协议是微软(Microsoft)和英特尔(Intel)1987年制定的协议,主要是作为Microsoft网络的通讯协议。SMB 是在会话层(session layer)和表示层presentation layer)以及小部分应用层application layer)的协议。SMB使用了NetBIOS应用程序接口 Application Program Interface,简称API)。另外,它是一个开放性的协议,允许了协议扩展——使得它变得更大而且复杂;大约有65个最上层的作业,而每个作业都超过120个函数,甚至Windows NT也没有全部支持到,最近微软又把 SMB 改名为 CIFSCommon Internet File System),并且加入了许多新的特色。

     

    3.1. Win访问smb

    使用unc路径

     

    smb 用 \\server\share\file 的方式访问

    3.2. Java访问smb

    3.2.1. jcifs/jcifs-1.3.8.jar.zip( 366 k)

     

    import jcifs.smb.SmbFile;

    import jcifs.smb.SmbFileOutputStream;

     

    public class smbTest {

     

    public static void main(String[] argsthrows Exception {

    // TODO Auto-generated method stub

    createDir("aaa2");

    File f=new File("\\\\192.168.2.106\\电影\\最新电影");

    System.out.println(f.exists());

    //f.createNewFile( );

    System.out.println("fffff");

    }

    private static String smburl = "smb://admin:admin@192.168.2.106/电影/最新电影";

    //zhoushun ----------------------------

    public static void createDir(String dirthrows Exception{

    SmbFile fp = new SmbFile(smburl+"//"+dir);

    System.out.println("fieldir+++++++++++++++++++++="+smburl+"//"+dir);

    //File fp = new File("Z://"+dir);  

            // 目录已存在创建文件夹  

            if (fp.exists() && fp.isDirectory()) {  

                

            } else{

            // 目录不存在的情况下,会抛出异常  

                fp.mkdir();  

            }

    }

     

    3.2.2. Jftp也可以了

     

    4. Unc路径

     

     

    4.1. Win访问Unc

    4.2. Java访问Unc

    Java读写unc路径,就是正常的的fileok.

     

    File f=new File("\\\\192.168.2.106\\电影\\最新电影");

    System.out.println(f.exists());

     

     

     

    Nfs

    5. NFS协议

     编辑

    本词条缺少概述信息栏名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!

    NFSNetworkFileSystem的简写,即网络文件系统
      网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS.NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以象访问本地文件一样访问远端系统上的文件。 
      以下是NFS最显而易见的好处: 
      1.本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到。 
      2.用户不必在每个网络上机器里头都有一个home目录。Home目录可以被放在NFS服务器上并且在网络上处处可用。 
      3.诸如软驱,CDROM,和Zip®之类的存储设备可以在网络上面被别的机器使用。这可以减少整个网络上的可移动介质设备的数量。 
      NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。客户机远程访问存放在服务器上的数据。为了正常工作,一些进程需要被配置并运行。 
      NFS有很多实际应用。下面是比较常见的一些: 
      1.多个机器共享一台CDROM或者其他设备。这对于在多台机器中安装软件来说更加便宜跟方便。 
      2.在大型网络中,配置一台中心NFS服务器用来放置所有用户的home目录可能会带来便利。这些目录能被输出到网络以便用户不管在哪台工作站上登录,总能得到相同的home目录。 
      3.几台机器可以有通用的/usr/ports/distfiles目录。这样的话,当您需要在几台机器上安装port时,您可以无需在每台设备上下载而快速访问源码。 
      注:NFSSunmicrosystems公司开发。是一种网络操作系统,并且是unix操作系统的协议

     

    5.1. Win访问nfs

    ,使用unc路径 好像不行

    使用win client,好像down不到soft..新不上

    nfs 需要加载 (mount), win上要装nfs客户端

     

     

     

     

    5.2. Java访问nfs

     

    5.2.1. jnex-4.3.jar (cant)

     话说这段代码虽然很简单,却费了我不少力气。JDK本身是没有访问NFS的功能,只能用第三方包了,google后发觉用java访问NFS的应用很少,竟然没找到可用的示例,远不如samba那么多,而且只有sunwebnfs可用来访问NFS,在http://yanfs.dev.java.net 上只有一个一个的散装源码打包后的jar都没地方下,API文档都没有愁煞我也找来找去,根据sun的在线文档摸索出了点头绪.

    Containing JAR files:

    [MAVEN2] jnex-4.3.jar

     

    import com.nexirius.util.XFile;

    XFileExtensionAccessor跟个XFileInputStream还是新不上..

    放弃..

     

    5.2.2. Use jftp

     

     

     个用JAVA写的FTP客户端程序。功能强大不仅支持FTP,还支持其它协议如SMB, SFTP, NFS, HTTP等。在传输文件的同时还可以...

     

    import com.sun.nfs.XFileExtensionAccessor;

    import com.sun.xfile.XFile;

    import com.sun.xfile.XFileInputStream;

    import com.sun.xfile.XFileOutputStream;

     

    public class NfsTest {

     

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    new NfsTest().downloadViaNFS("192.168.2.106","admin","admin","电影");

    }

     

    public void downloadViaNFS(final String ipfinal String user,

    final String passwordfinal String dir)

     

    {

     

    Logger logger = new Logger("");

    logger.debug("NFS download begin!");

     

    //try {

     

    String url = "nfs://" + ip + "/" + dir;

     

    XFile xf = new XFile(url);

     

    if (xf.exists())

     

    {

     

    logger.debug("URL is OK!");

     

    else

     

    {

     

    logger.debug("URL is bad!");

     

    return;

     

    }

     

    //XFileExtensionAccessor nfsx = (XFileExtensionAccessor) xf

    //.getExtensionAccessor();

    //

    //if (!nfsx.loginPCNFSD(ip, user, password))

    //

    //{

    //

    //logger.debug("login failed!");

    //return;

    //

    //}

     

    String[] fileList = xf.list();

     

    X

     

    6. Wefnfs,http ,ftp

    WebNFS技术是Sun的网络文件系统(Network File System)技术的扩展.可提供比标准HTTP或FTP协议快10倍的文件传输速度。

     

    7. Potplayer访问smb nfs ftp http

     

    nfs 需要加载 (mount), win上要装nfs客户端

    smb 用 \\server\share\file 的方式访问

     

    8. 参考

    SMB协议_百度百科.htm

    基于SMB协议的共享文件读写 - - ITeye技术网站.htm

    Potplayer支持播放NFS_SMB之类的网络文件吗?-PotPlayer论坛 - Powered by Discuz!.html

  • 相关阅读:
    汤姆大叔JavaCript系列10阅读笔记1
    界面设计
    html5 canvas store 和 restore 详解
    js 的上下文
    PHP实现大数以,做分隔符分隔
    Javascript可以兼容各浏览器的阻止默认行为发生的方法
    Javascript实现页面内元素添加滚动条
    $.getjson遇到的几个问题json返回数据中带有html标签的输出
    MYSQL的随机查询的实现方法
    jQuery插件:jqplot图表绘制插件详解
  • 原文地址:https://www.cnblogs.com/attilax/p/15198822.html
Copyright © 2011-2022 走看看