Port forwarding service. Handles connections originating from inside the simulated environment.
conf_object, log_object, tcp_service, udp_service, port_forward
- cell-change
- Notifier that is triggered after the object's cell was changed.
- object-delete
- Notifier that is triggered just before Simics object is deleted.
- queue-change
- Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.
-
status
– print status of the object
-
tcp
-
Required attribute;
read/write access; type:
o
TCP layer. Must implement the tcp interface.
-
udp
-
Required attribute;
read/write access; type:
o
UDP layer. Must implement the udp interface.
-
connections
-
Optional attribute;
read/write access; type:
[[si]|[sissi]|[sii]|[sissii]*]
Configures how connections are forwarded. The first two elements in each sublist specify the protocol and port to listen on. If zero, then all ports are listened on. If a sublist has five elements, then the additional arguments specify the ip address to listen on, and the ip address and port to forward to. If a sublist only has two element, then the connection will be forwarded to the ip address and port given in the incoming ip packet. If a source port is specified, it will be appended as the last element of the list, i.e., the length of the list will be 3 or 6, respectively, in that case.
-
active_connections
-
Pseudo attribute;
read-only access; type:
[[ssisi]*]
Currently active connections from the simulated world to the real world. This attribute is read-only, and returns a list of connections, where each item contains the following information: [tcp/udp, simulated ip, simulated port, real ip, real port].
-
drop_active_connection
-
Pseudo attribute;
write-only access; type:
[ssisi]
Drop an active connection from the simulated world to the real world. This attribute can be used to drop forwarded connections in case it was left open by either side, and waiting for time-out is not a viable option. The value to write is the connection description, as returned by the active_connections attribute: [tcp/upd, simulated ip, simulated port, real ip, real port].
-
algs
-
Optional attribute;
read/write access; type:
[o*]
Application Level Gateway (ALG) objects providing protocol specific support for port forwarding. The first object returning non-null in a call to its connection method will be the one that handles that particular connection.
-
udp_timeout
-
Optional attribute;
read/write access; type:
i
Timeout before dropping an idle UDP NAT forcefully, in seconds. Default to 600. A negative value will in effect disable this timeout mechanism.
service-node