Data Network Resource
       Earn on the Web

Banyan Vines


Vines stands for Vitual Networking System and is designed by Banyan Systems Inc.

The Operating software is maintained by the Server which provides and maintains the resources for the clients. SNA, TCP/IP and Appletalk (as an AppleShare device) are supported in the version 5.5.2.


Unique network addresses are bound to high level names called StreetTalk Names. StreetTalk names are in the format Item@Group@Organisation e.g. David Smith@Education@Bay Networks. The Item can have 31 characters, Group 15 and Organisation 15.

The BAN.EXE file is run from the client and this executes other commands used to attach the client to the server. BAN.EXE reads the file PCCONFIG.DB file for the type of LAN card installed and installs the appropriate driver, the client then broadcasts for a Routing Server which assigns a unique network address to the client. The client executes the REDIR.EXE program which broadcasts for a Server with the same software release as itself, if it cannot find one it executes the NEWREV.EXE program which reports the software releases of the routers software that are one hop away or less and the client has a choice to upgrade or downgrade. Once the client and server are of the same software release, the LOGIN.EXE program is executed. The Z: Drive Server then checks the Login name using Security and the authenticity of the StreetTalk services.

The Organisation is at the top of the tree followed by the Group, so the Group must reside within an Organisation and must be physically located on the server that it was created. StreetTalk updates are sent to every server notifying each server of each available group when a group is added or deleted, when a server is added and when a 12 hour clock expires. The StreetTalk information is kept in the StreetTalk Master File and has information on every Item of every group@org on that server and also, a pointer to the name of the server that maintains a group not on this server, as well as a routing table entry for the next hop to that server. A server that has not been heard from for 96 hours will be dropped from this table.

Banyan Vines and the OSI Layers

As a reminder the OSI layers are:
  • Application
  • Presentation
  • Session
  • Transport
  • Network
  • Data Link
  • Physical
At the Data Link layer the Fragmentation Protocol (FRP) converts packets to be sent into smaller frames and reassembles them at the receiving end. This is unusual, normally fragmentation occurs at the Session layer.

Vines Internet Protocol (VIP) carries out a best effort delivery of datagrams through the network, it performs the functions of IP. The Routing Update Protocol (RTP) distributes the network topology information amongst the servers. The Address Resolution Protocol (ARP) assigns unique internet addresses to new clients whilst the Internet Control Protocol (ICP) provides indication of unreachable destinations and routing cost information (similar to ICMP).

At the Transport Layer, to coordinate end to end transfer, we have IPC unreliable (Inter Process Communications Protocol) which provides a datagram service for broadcasts in particular; IPC reliable, which provides an acknowledged message sevice for use with print services and initial file server connections; and SPP (Sequenced Packet Protocol) which binds the client to the file service providing a virtual connection.


Each node has a 48 bit unique internet address consisting of a 4 byte network number and a 2 byte subnetwork number. The network number of the router nodes (servers) is based on the server key attached to the parallel port on the Banyan server whilst the subnetwork address for the server is always 0001. The network number of the client is assigned by the routing server (either a Banyan Vines server or a Bay Networks router, the special range is 30400000 to 305FFFFF). The subnetwork address for the client can be chosen from the range 8001 to FFFE on a round robin basis.

On startup, the client sends an ARP broadcast to any server on the same physical media as itself. A server responds and places its source address in the frame along with an address for the client. The client receives this from the first responding server and puts the servers address in the frame and requests a network number for itself. This server responds with an available subnetwork number from the pool and becomes the clients Routing Server. All traffic forwarding decisions are based upon the destination network number, the routing server also handles the translation of the VIP address to the clients MAC address. The Routing Server acts as the Default Gateway for the client and if the Routing Server became inactive, the client would need to be rebooted in order to claim a new Routing Server and a new network address.

Vines IP Header Format

Vines Header

The 18 byte Vines header follows the data link header, and following it is data for upper layer protocols or RTP, ARP and ICP headers. The length field includes this header and all the data following.

The Transport Control Field could indicate a node class for which a broadcast is destined and its hop count, or indicate an error, metric, redirect message with a hop count. A broadcast has its destination data link address set to all Fs. If Vines IP cannot route a packet, then it sets the Error bit and ICP then interrupts and handles it. The Metric bit is set when the Transport Layer needs the last hop cost between the destination service node and the destination client node. A routing server will set the Redirect bit to indicate that a better route exists through a different server.

Value (hex) Bit positions Subfield name
  0 reserved
0 - 7 0 - 3 if all Fs broadcast, then broadcast class
4 1 redirect
2 2 Metric
1 3 Error
00 - 0F 4 - 7 Hop Count

The Protocol Type field indicates whether the packet is destined for a Transport Layer protocol (IPC, SPP) or a Network Layer protocol (ARP, RTP, ICP).

Vines IP Routing

Below is the Vines Routing Algorithm:

Vines Routing

Clients pay no attention to route packets but Servers have compulsory support for route- through services.

The Routing Table Update Protocol (RTP) is used to exchange routing information across the Vines network and decisions are based on a routing metric, which is an estimated round-trip delay in 200ms intervals. A metric of 0xFFFF indicates that the destination is unreachable.

Clients pay no attention to route packets but Servers have compulsory support for route-through services. Service and Client nodes maintain two routing tables; a Known Networks Table and a Neighbors Table.

The Servers Known Networks Table contains; all known local or remote networks, a pointer to the next hop, current metric to each destination network and an Idle timer. The Clients just track the networks that they are currently communicating with.

The Servers Neighbors Table contains; an entry for every directly connected server, an entry for every client assigned a network address by this server and an entry for every client this server is currently communicating with. The Clients just have entries for the server that gave them their address and every node that they are currently communicating with.


There are four types of RTP packets:
  • Request Packet: Request routing table information from a server/router node.
  • Update/Response: A 'Keep Alive' signal every 98 seconds or when a change occurs.
  • Redirect Packet: Information of a more direct route for a client, via another server.
  • Reinitialize: A broadcast by a server indicating the removal of itself and therefore its removal from all their routing tables.
The Internet Control Packet (ICP) is used to report reachability information (like ICMP with TCP/IP)and it contains the Packet Type (0x0000 for error and 0x0001 for metric notification), the Code field (0x155 for host unreachable and 0x163 for time out event), and Parameters containing exception or metric notification event.

Routing Metrics

Vines Routing metric

Given the above setup, the routing metric notification is used by a server to obtain a last hop cost for a destination Vines IP address. Server 1 only knows the metric to Server 3 until the ICP metric notification arrives with the metric for the Asynch connection. Server 1 then sends a packet to the client and Server 3 returns an ICP metric notification to Server 1 with the last hop cost value to reach the client.

If the Asynch link fails then Server 3 sends an ICP exception notification back to Server 1. If a client dies and then comes back on then its address changes and this gives an error condition.

Peculiar to Bay Networks implementation of Banyan Vines is the ability to allow clients on a serverless network to communicate with Vines Servers in the internetwork, thereby overcoming the Vines single hop limitation. Serverless Network Segment support also allows communication between clients and servers across multiple routers.

Source Route End Station support allows routeable traffic generated in a source route bridge environment to be routed to end stations on remote LANs over a multiprotocol backbone. The Bay Networks router acts as an end station and a router.

Valid HTML 4.01 Transitional

Utility Warehouse     Earn on the Web     Free book on how to make money    

All rights reserved. All trademarks, logos, and copyrights are property of their respective owners.