SMB

SMB2

SMB3

CIFS

YNQ™ SMB Library For Embedded Devices

YNQ™

YNQ™ est une solution client SMB et serveur SMB développées pour les systèmes embarqués non Windows afin d'assurer l'interopérabilité avec les machines basées sur Windows. Le partage de fichiers YNQ™ permet à plusieurs périphériques embarqués de naviguer à distance dans les dossiers partagés SMB et mutuellement de lire, écrire, modifier, copier, supprimer et mettre à jour les fichiers. Toutes les opérations exécutées sans qu'il soit nécessaire de transférer l'intégralité du fichier vers ou depuis le disque local ou la mémoire de l'appareil.

Vous pouvez télécharger le livre blanc sur YNQ™ ici

Si les ordinateurs de bureau et les serveurs comme Windows et Macintosh prennent en charge la connectivité SMB de manière native, dans le monde embarqué, la situation est plus complexe . Un périphérique peut être développé sous Linux / Unix ou sur un RTOS dépourvu de solution SMB comme VxWorks, ThreadX, Integrity, QNX, ou de tout autre système RTOS ou de systèmes d'exploitation comme iOS, Windows CE, etc.

Conçu pour une intégration dans pratiquement n'importe quel environnement, qu'il s'agisse d'un système d'exploitation, d'un CPU ou d'un compilateur, YNQ™ est entièrement conforme aux spécifications Microsoft SMB/SMB2/SMB3 et prend en charge les derniers dialectes SMB. Une fois connecté à un réseau Windows, l'appareil gagne en visibilité sur le réseau, permettant aux utilisateurs d'effectuer des fonctions de partage de fichiers.

En tant que première solution SMB embarquée au monde, cette pile SMB non GPL est peu encombrante, contrairement à la solution open source Samba, et actualisée pour répondre aux scénarios et aux exigences du marché actuel. YNQ™ fonctionne dans des millions d'appareils embarqués tels que des scanners, des imprimantes, des routeurs domestiques, des appareils mobiles, des appareils à rayons X, des appareils d'automatisation, des appareils automobiles, aérospatiaux et de défense et pratiquement tout appareil requis pour exécuter des fonctions complètes de partage de fichiers dans un environnement réseau Microsoft Windows.

Produits et composants YNQ ™

En tant que bibliothèque modulaire, le YNQ ™ est composé de quatre produits distincts :

  1. Pure Client - fonctionnalité client SMB de base
  2. Client d'entreprise : ajoute la capacité d'enregistrer la machine dans Active Directory de l'entreprise.
  3. Serveur autonome - fonctionnalité de base du serveur SMB
  4. Serveur d'entreprise - ajoute la capacité d’enregistrer le serveur dans l’annuaire Active Directory de l'entreprise et dispose d’une capacité d'authentification unique.

YNQ™ peut être considéré comme un serveur SMB, un client SMB ou un daemon NetBios.

Couches d'architecture YNQ™

YNQ™ fait partie de la structure logicielle moderne, divisée en trois niveaux de modularité :

  • Haute : Niveau API / protocole API (NQ), serveur, client, NetBIOS
  • Moyen : Niveau de service Authentification, commune, réseau
  • Faible : Niveau de système d'exploitation Système, pilote défini par l'utilisateur

Architecture Layers

Les composantes de niveaux 1 et 2 sont indépendantes du système, alors que celles de niveau 3 peuvent être modifiées au cours du portage ou de l'intégration.

YNQ ™ est le produit phare de Visuality Systems Ltd. Lors de son lancement en 1999, il s'appelait CIFS NQ et a ensuite été renommé NQE™ en 2014. YNQ™ constitue la nouvelle génération de la famille de produits NQ, sortie en 2019 et développée dans le cadre de la méthodologie Agile. YNQ™ a accru sa part de marché de manière significative en évoluant avec l’utilisation croissante par les PME et dans le contexte d'une relation privilégiée et de confiance entre Visuality Systems et Microsoft Corporation.

YNQ™ peut également remplacer l'ancienne SMB1 par le dernier dialecte SMB des systèmes Windows existants tels que Win XP et Server 2003. La suppression de SMB1 et l'installation d'une pile chiffrée permettront d'éviter les cyber-risques inutiles et de dépasser les limites de connexion.

YNQ ™ est maintenant disponible pour l'intégration. L'acquisition de la pile réseau commerciale, non GPL, YNQ™, permet à nos clients de gagner du temps et de faire des économies de coûts R&D et de mettre l'accent sur leur technologie principale..

Applications YNQ™

Marchés YNQ™

  • Appareils grand public
  • Entreprises
  • Médical
  • Automatisation industrielle
  • Aérospatiale et défense
  • Appareils intelligents

SE YNQ™ cible

  • VxWorks
  • Linux
  • Integrity
  • Windows
  • ThreadX
  • Nucleus
  • iOS
  • Android
  • Itron
  • QNX
  • Tout OS sur demande

Caractéristiques YNQ™

  • Bibliothèque hautement portable vers n'importe quelle plate-forme
  • Indépendant du matériel – fonctionne sur n'importe quel processeur
  • Petite empreinte
  • Performances rapides
  • Hautement personnalisable
  • L'implémentation CIFS / SMB la plus complète du marché
  • Code source ANSI C

Conformité et connectivité

YNQ ™ est entièrement conforme aux spécifications Microsoft SMB / SMB2 / SMB3 et supporte tous les dialectes SMB, de NTLM 0.12 à 3.1.1. Cela garantit la connectivité de toutes les versions clientes de Microsoft, Apple Macintosh et Samba.

Exemples de code YNQ™

Mount


// Mount remote share using credentials
udSetCredentials("userName", "password", "domain");
nqAddMountA("\\mountPoint", "\\\\192.168.19.1\\sharedFolder", 1);
 

Open, read, write and delete file


// Mount remote share using credentials
udSetCredentials("userName", "password", "domain");
nqAddMountA("\\mountPoint", "\\\\192.168.19.1\\sharedFolder", 1);    
// Create a file on a remote share
NQ_HANDLE fileHandle = ccCreateFileA("\\mountPoint\\file.txt",
                                FILE_AM_WRITE,
                                FILE_SM_EXCLUSIVE,
                                FILE_LCL_UNKNOWN,
                                FALSE,
                                0,
                                FILE_CA_CREATE,
                                FILE_OA_FAIL
                                );
NQ_BYTE data[DATA_SIZE];
NQ_UINT dataSize = DATA_SIZE;
NQ_UINT writtenSize, readSize;
// Write to remote file 
ccWriteFile(fileHandle, data, dataSize, &writtenSize);
// Read from a remote file 
ccReadFile(fileHandle, data, dataSize, &readSize);
// Close file handle 
ccCloseHandle(fileHandle);
// Delete a file on a remote share
ccDeleteFileA("\\mountPoint\\file.txt");
 

Delete file by name


// Mount remote share using credentials
udSetCredentials("userName", "password", "domain");
nqAddMountA("\\mountPoint", "\\\\192.168.19.1\\sharedFolder", 1);
// Delete a file on a remote share
ccDeleteFileA("\\mountPoint\\file.txt");
 

Browsing directory


// Mount remote share using credentials
udSetCredentials("userName", "password", "domain");
nqAddMountA("\\mountPoint", "\\\\192.168.19.1\\sharedFolder", 1);    
// Open a directory on remote share
FindFileDataA_t fileData;
NQ_HANDLE dirHandle = ccFindFirstFileA("\\\\192.168. 19.1\\sharedFolder\\*", &fileData, 0);
if (dirHandle != NULL)
{
    // Get next file in the directory
    while (ccFindNextFileA(dirHandle, &fileData))
    {
        printf("Filename: %s, fileSize:%u \n", fileData.fileName, fileData.allocationSizeLow);
    }
    // Close directory handle
    ccFindClose(dirHandle);
}
 

Visuality Systems developed a Java based product. JCIFS is a Java SMB solution that support SMB1 with no further support in SMB2 or SMB3 protocols. JCIFS latest update was in 2014 and therefore the Visuality Systems SMB code written in Java is a good alternative for the open source JCIFS.

Follow Us

Actualités

Mars 08, 2019

Visuality Systems Visuality Systems annonce la sortie de la dernière version de jNQ, la bibliothèque client Java SMB, version 1.0.2-br-5. Cette version inclut un certain nombre de nouvelles fonctionnalités : capture de paquets internes tels que le trafic IPv6, DNS et Netbios, une commande de montage améliorée, et une recherche de répertoire améliorée avec reconnaissance géométrique. De plus, de nombreux bugs ont été corrigés.

 

Décembre 16, 2018

Le Plugfest officiel des tests SMB aura lieu du 28 au 31 janvier 2019 à l'hôtel Sheraton Tel-Aviv. Quatre jours de tests de clients et de serveurs SMB, ouverts à toute entreprise qui souhaite tester ses implémentations SMB. Inscrivez-vous en suivant le lien ci-dessous.

EMEA SMB Plugfest

Novembre 26, 2018

Visuality Systems annonce la transition vers le système de développement Agile dont l'un des nombreux avantages comprend la livraison de mises à jour de Visuality entièrement testées dans un cycle de temps très court. En outre, Visuality Systems a mis en place un service d'assistance en ligne qui offre une interaction simple et efficace du client avec l'équipe de support technique de Visuality Systems.

Inscription au service d'assistance

 

Novembre 06, 2018

Visuality Systems sera l'un des sponsors de la conférence SDC EMEA qui se tiendra à l'hôtel Sheraton, Tel-Aviv, Israël, le 30 janvier. L'événement se tiendra en même temps qu'un Plugfest de test SMB3 qui se tiendra du 28 au 31 janvier.

Voir le lien

 

Août 12, 2018

Les utilisateurs de Windows XP et Server 2003 peuvent désormais passer de la pile SMB1, qui n'existe plus, au protocole SMB3 crypté à jour avec le dernier serveur NQE.

 

Juillet 31, 2018

Visuality Systems a publié jNQ™ 1.0.1 en ajoutant des fonctions de sécurité et des améliorations de performance à la librairie Java SMB3.1.1 NQ.