Foreign devices...

In some cases there may be devices that are transient, such as SLIP or PPP dial-in workstations. These devices may live on a subnet where it is not economical to install, configure and maintain a BBMD or where there are no other BACnet nodes. Because it is important for these devices to able to communicate with BACnet/IP networks, we need to define a mechanism whereby such devices can associate themselves with a BACnet network.

A "foreign" device is a BACnet device that has an IP subnet address different from those comprising the BACnet/IP network which the device seeks to join. The foreign device may be a full-time node on the foreign subnet or may be a part-time participant, as would be the case if the device accessed the internet via a SLIP or PPP connection.

There is no restriction on where these devices are or how they gain access to the Internet. Such a foreign device could just as easily be a workstation on a full-time Internet subnet or someone with a laptop accessing the internet through an Internet Service Provider at home.

The Register-Foreign-Device message from the client to the BBMD is always from one IP device to another.

Upon receipt of the message, the BBMD adds the foreign device to its Foreign-Device-Table (FDT) and starts a timer equal to the Time-to-Live parameter (hereafter "TTL") plus a fixed "grace period" of 30 seconds. If the foreign device fails to re-register before the timer expires, the BBMD may delete the foreign device from its FDT. The idea is to conserve the FDT table space resource.

This is the BVLC-Result message that is sent to the foreign device by the BBMD. If no ACK message were returned, the client would have no way of knowing whether or not the BBMD could accept clients. For example, the BBMD might not support foreign devices, or the foreign device table of B/IP addresses might be full. In both of these cases (as well as in the case of a security objection to the proposed registrant) the BBMD just drops the request.