Title: Initial Response to Telecom Wireless RFP telecom000501
1Initial Response to Telecom Wireless
RFPtelecom/00-05-01
- Kimmo Raatikainen
- Nokia Research Center
- (Department of Computer Science, University of
Helsinki)
2Presentation Outline - 1/2
- Prelude
- Contact persons, response to RFP, design
rationale - Architectural Framework
- usage framework, wCORBA extensions
- GIOP mappings
- onto UDP, onto WAP Wireless Transaction Protocol
(WTP) - Wireless CORBA Extensions
- Location Transparent IOR, Bootstrapping the
terminal, Initial access, Interface to visited
NS, Home Location Register - Handoff and Access Recovery
3Presentation Outline - 2/2
- Issues to be discussed
- Notification Service Mobility Events
- Interoperable Naming Service
- Messaging Service
- Other ORB Services Generic Invitation Service
- Homeless Terminals
- Conformance Points
- Conclusions
4Contact Persons
- Nokia Kimmo Raatikainen
- kimmo.raatikainen_at_nokia.com
- Vertel Shahzad Aslam-Mir
- sam-aslam-mir_at_vertel.com
- Sonera Jouni Korhonen
- jouni.korhonen_at_sonera.com
- University of Helsinki Kimmo Raatikainen
- kimmo.raatikainen_at_cs.helsinki.fi
5RFP Requirements - 1/2
- Architectural framework
- GIOP mapping onto Internet transport protocol
(TCP or UDP) over wireless links - Mechanism that hides from CORBA clients the
mobility of terminals on which CORBA servers are
running - Mechanism for initial access to a new mobility
domain - Mechanism for finding the necessary basic set of
CORBA services in mobility domain - Mechanism for advertising CORBA services
available on a mobile terminal - Mechanism for handoff between mobility domain
- All these requirements are addressed.
6RFP Requirements -2/2
- This response proposes a GIOP mapping onto WAP
Wireless Transaction Protocol WTP - This response discusses usage of
- Notification Service,
- Interoperable Naming Service, and
- Messaging Service.
- The response also discusses usage of other ORB
Services.
7Design rationale
- Design is based on the results from the EC/ACTS
project DOLMEN - DOLMEN specified and implemented a prototype
based on CORBA 2.0 - This response takes advantage of CORBA 2.3
features - Target is a general framework for mobility - not
only terminal mobility but an object group
mobility - some of the complexity may be removed if only
terminal mobility would be addressed (one object
group in a terminal) - Wireless access without (ORB-level) mobility as a
well-defined subset serves also for UDP-mapping
in WANs - Reuse of IETF defined session protocol
8Architectural Framework
9(No Transcript)
10Assumptions - 1/2
- In order to exploit all features specified in
this proposal CORBA applications (or generic ORB
application libraries) on mobile terminals need
to be aware of mobility. - Each terminal is an ORB domain of its own.
- Terminals attach to other ORB domains through an
access node that implements a low-level
interoperability bridge called Wireless Access
Bridge (WAB) - A Wireless Access Bridge may support ES-IOPs for
mobile terminals.
11Assumptions - 2/2
- A terminal may have a home domain, in which a
Home Location Register interface is implemented. - The Home Location Register provides the means to
find the Wireless Access Bridge to which the
terminal is currently attached. - A Wireless Access Bridge may provide a temporary
HLR for "homeless" terminals
12Domain Definition
- RFP mobility domain to denote a domain that
allows access from mobile terminals and provides
them ability to use and to offer CORBA-based
services is sufficient. - We do not use the term mobility domain.
- Instead, we use the term visited domain in a
similar sense. - A visited domain consists of one Wireless Access
Bridge and a set of CORBA Services that are
available through a Wireless Access Bridge. - It should be noted that two or more Wireless
Access Bridge can share the set of CORBA Services
available through them. - Therefore, a single instance of a CORBA Service
can be available through several visited domains.
13Bridge associations
14Wireless CORBA Extensions
15Terminal domain
16Mobile Terminal Bridge
- terminal bootstrap
- initial access
- handoff
- access recovery
- GIOP/UDP mapping
- optionally the GIOP/WAP mapping
17ORB Service Agent
- provides the means of transparently accessing
- Naming Service and other ORB services in the
visited domain. - The binding of names into the Naming Service in
the visited domain that are automatically rebind
to the Naming Service in the new visited domain
after a handoff. - The binding of names into the Naming Service in
the home domain the IORs of which are
automatically updated domain after a handoff. - For the other ORB services the handoff is only
semi-automatic. - The old references are stalled but new references
need explicit involvement of the application.
18Mobility Event Supplier
- mandatory part of the proposed technology in the
terminal domain - generates notifications of
- handoffs,
- connectivity drops, and
- connectivity recoveries.
- an optional feature in the visited domains
19Visited domain
20Wireless Access Bridge
- Counterpart of the Mobile Terminal Bridge in the
access network domain. - implements the support of the mandatory parts of
the mobile terminal including support - initial access,
- visited domain services,
- location transparent IORs,
- ORB Service Agent,
- handoff and
- access recovery.
21Home domain
22Home Location Register
- provides the means of keeping track of the
current location - the Wireless Access Bridge in current visited
domain. - provides the means of accessing the ORB Services
in the home domain, even if the access is through
a visited domain. - The HLR interface also provides the means of
updating the references available through the
Naming Service in the home domain. - May support paging
- Must have the paging method
- but it can raise exception PagingNotSupported
23GIOP mappings
- onto UDP based on IETF Stream (aka Simple)
Control Transmission Protocol (SCTP) proposal - onto WAP Wireless Transaction Protocol Class 1
24Wireless IOP
- GIOP mapping onto UDP
- UDP is an unreliable connectionless datagram
(message-based) transport service - a protocol layer is needed between GIOP and UDP
to provide required reliability and mobility
support - GIOP Session Protocol (GSP) provides
- reliability,
- fragmentation,
- error detection,
- flow and congestion control,
- resistance to flooding and masquerade attacks.
25GIOP-UDP mapping
26GIOP-UDP mapping Design rationale
- Statefull session protocol is needed
- Several session protocol specifications are
available - Stream (aka Simple) Control Transmission Protocol
(SCTP) most prominent - better alternatives are wellcome
- GIOP Session Protocol follows the design of the
SCTP - some differences in fields of protocol messages
- some additional chunk types to support handoffs
and access recovery - Nevertheless, the protocols are quite close to
each other so that a high degree of reuse in
implementing those two protocols is expected.
27GIOP Session Protocol - 1
- A modified SCTP
- draft-ietf-sigtran-sctp-09.txt (status IESG last
call) - Reliability
- message numbering
- error detection thru Adler-32
- Selective ACKs
- Fragmentation
- WIOP message size should be (at most) MTU
28GIOP Session Protocol - 2
- Flow/congestion control
- needed to bound GSP control message delays
- needed to bound number of datagrams lost during
handoffs - In SCTP TCP-like control mechanism
- In IETF Endpoint Congestion Management WG just
started Ratebased congestion control - to be selected in the revised submission
29GSP Messages - 1
- From SCTP
- INIT, INIT ACK
- Selective Acknowledgement
- Heartbeat Request, Heartbeat ACK
- ABORT
- SHUTDOWN, SHUTDOWN ACK
- Operation Error
- State Cookie, Cookie ACK
- Payload Data
30GSP Messages - 2
- AccessRequest, AccessRequestACK
- AccessRecoveryRequest, AccessRecoveryRequestACK
- AccessRequestReply, AccessRequestReplyACK
- AccessRecoveryReply, AccessRecoveryReplyACK
- HandoffRequest, HandoffRequestACK
- Synchronize, SynchronizeACK
- Tunneled Data
- Segmented Chunk
31GSP datagram format
32GSP Common Header Format
Chunk Field Description
33INIT Message
34Access Request Message
35Segmented Chunk
- to encapsulate a segment of a chunk that does not
fit into a single GSP datagram - Most chunks are small, but
- Access Request, Access Reply,
- Access Recovery Request, and
- Access Recovery Request Reply may be quite long
- The receiver must obtain all partial chunks
before acknowledging the chunk. - If the beginning chunk (that contains the Chunk
ID) is missing, all partial chunks MUST be
silently discarded. - If middle parts or the end part is missing, the
receiver MAY use negative acknowledgement if the
chunk type has the corresponding Acknowledgement
chunk.
36GIOP - WAP WTP mapping
- The Wireless Transaction Protocol is designed for
request/reply applications. - WTP runs on top of a datagram service, called
Wireless Datagram Protocol (WDP), and optionally
it may use a security service, called Wireless
Transport Layer Security (WTLS). - If IP is the bearer, then WDP is UDP
- WTP Class 1 transactions provide a reliable
datagram service - The reliability provided by WAP WTP Class 1 is
sufficient for GIOP messaging. - A GIOP message in the CDR format is transmitted
in an Invoke PDU or in Segmented Invoke PDUs of
WAP WTP. - The SAR functionality is needed for the GIOP-WTP
mapping
37Wireless CORBA Extensions
- Location Transparent IOR
- Bootstrapping the terminal
- Initial Acces
- ORB Service Agent
- WAB Interface to Naming Service
- Home Location Register
38Location Transparent IOR
- One of the mandatory requirements in the RFP was
to specify mechanisms that hides mobility of
terminals on which CORBA servers are running from
CORBA clients - This can be done by introducing a location
transparent IOR - A new IOR component called TAG_MOBILE_IOP
- struct
- version giop_version
- string HLR_host
- unsigned short HLR_port
- sequence ltoctetgt HLR_object_key
- sequence ltoctetgt object_group_id //
terminal_id - sequence ltoctetgt object_key // object at
terminal -
39Object Reference Translation
- When a local object reference is passed from a
mobile terminal through the Mobile Terminal
Bridge, it is converted into WIOPIOR format. - module WIOP
- struct IOR
- string type_id
- sequence ltoctetgt object_group_id
- sequence ltoctetgt object_key
-
-
- When a Wireless Access Bridge receives an object
reference in WIOPIOR format, it converts it
into IOPIOR format. - In the profile body the WAB puts its own host,
port and object_key as well as the TAG_MOBILE_IOP
component.
40Updating Object Reference
- If a Wireless Access Bridge gets an invocation to
an object on a mobile terminal to which it does
not have an association, then the WAB queries the
current WAB from the Home Location Register. - The WAB either
- replies with LOCATION_FORWARD to the requester or
- forwards the invocation to the current WAB.
- If the invocation is forwarded, then the WAB uses
LOCATION_FORWARD_PERM in the reply.
41Bootstrapping the terminal - 1/2
- the usual ORB initialization (see Section 4.6-7
in CORBA V2.3) - mobile specific initialization
- ObjectIdList list_wireless_access_services ()
- Object resolve_wireless_access_references (
- in ObjectId identifier
- ) raises (InvalidName)
- Initial reference obtained
- MobilityEventSupplier (local reference),
- HomeLocationRegister (IOPIOR), and
- ORBServiceAgent (local reference).
42Bootstrapping the terminal - 2/2
- the mobile terminal needs to get the
object_group_id identifying the terminal, and
which is also known in the home location
register - ObjectGroupId resolve_object_group_name (
- in string object_group_name
- ) raises (InvalidName)
- Open Issue Do we need MTB_init similar to
ORB_init? - Most probably not!
- Initialization of MTB from an initialization file
much more simple and robust.
43Initial Access
- It is not always feasible to maintain
connectivity all the time. - MTB provides operations to establish and release
connectivity - void connect (
- in ObjectGroupId object_group_id,
- in Object HLR_reference,
- in sequence ltoctetgt location_update_credentials,
- in long timeout
- ) raises (AccessDinied, RequestTimeout)
- void disconnect (
- in ObjectGroupId object_group_id,
- in Object HLR_reference,
- in sequence ltoctetgt location_update_credentials,
- in long timeout
- ) raises (AccessDinied, RequestTimeout)
44Establishing GIOP Session - 1/3
- Several CORBA applications may simultaneously be
running - Only one GIOP Session between the MTB and WAB.
- The GIOP Session is shared by all applications
running on the terminal. - The Wireless Access Bridge maintains mapping
between the object_group_id and UDP endpoint of
the Mobile Terminal Bridge.
45Establishing GIOP Session - 2/3
MTB
WAB
HLR
connect
INIT
INIT ACK
COOKIE
ACCESS REQ
COOKIE ACK
ACCESS REQ ACK
update_location
ACCESS REP
ACCESS REP ACK
TerminalHandoffEvent
HandoffArrivalEvent
46Establishing GIOP Session - 3/3
- If the acknowledgement does not arrive in time,
then the corresponding message is resent
according the (implementation dependent)
retransmission policy. - The peer MUST interpret duplicate messages as
lost acknowledgement and re-send the
corresponding acknowledgment. - The MTB and WAB MAY use the HEARTBEAT message to
probe the connectivity. - The ABORT message MUST be sent, when the initial
access procedure is terminated.
47Closing GIOP Session
- When an application invokes the disconnect
operation - then if no other application uses the same
object_group_id - MTB clears the current WAB information in the
HLR, which in turn unbinds the names in the
Naming Service - the WAB unbinds names from the Naming Service
- WAB generates HandoffDepartureEvent
- If no other application uses the GIOP Session,
- then the MTB sends the SHUTDOWN message to the
WAB - which replies with the SHUTDOWN ACK message.
48ORB Service Agent Interface - 1/3
- void register_object_group (
- in string object_group_name,
- in Object HLR_reference,
- out ObjectGroupId object_group_id,
- out sequenceltoctetgt location_update_credentials,
- in sequenceltoctetgt register_credentials
- ) raises (NameNotUnique, NoAccess,
AccessViolation) - void unregister_object_group (
- in ObjectGroupId object_group_id,
- in Object HLR_reference,
- in sequenceltoctetgt register_credentials
- ) raises (UnknownObjectGroupID, NoAccess,
AccessViolation)
49ORB Service Agent Interface - 2/3
- ObjectIdList list_visited_domain_services (
- ) raises (NoAccess)
- Object resolve_visited_domain_references (
- in ObjectId identifier
- ) raises(InvalidName)
- ObjectIdList list_home_domain_services (
- ) raises (NoAccess)
- Object resolve_home_domain_references (
- in ObjectId identifier
- ) raises(InvalidName)
50ORB Service Agent Interface - 3/3
- Interface to Naming Service in Visited and Home
Domains - At least the following operations should be
provided - ltdomaingt_bind,
- ltdomaingt_resolve,
- ltdomaingt_unbind
- where ltdomaingt is either visited_domain or
home_domain.
51WAB Interface to Naming Service
- Used by ORB Service Agent
- void visited_domain_bind (
- in Name n,
- in Object obj
- ) raises (NotFound, CannotProceed, InvalidName,
AlreadyBound) - Object visited_domain_resolve (
- in Name n
- ) raises (NotFound, CannotProceed, InvalidName)
- void visited_domain_unbind (
- in Name n
- ) raises (NotFound, CannotProceed, InvalidName)
52Home Location Register - 1/4
- void update_location (
- in ObjectGroupId object_group_id,
- in string host, // new access bridge
- in unsigned short port,
- in sequenceltoctetgt location_update_credentials,
- ) raises (UnknownObjectGroupID, AccessViolation,
IllegalTargetBridge) - void query_location (
- in ObjectGroupId object_group_id,
- out string host,
- out unsigned short port
- ) raises (UnknownObjectGroupID,
UnknownObjectGroupLocation)
53Home Location Register - 2/4
- void register_object_group (
- in string object_group_name,
- out ObjectGroupId object_group_id,
- out sequenceltoctetgt location_update_credentials,
- in sequenceltoctetgt register_credentials
- ) raises (NameNotUnique, AccessViolation)
- void unregister_object_group (
- in ObjectGroupId object_group_id,
- in sequenceltoctetgt register_credentials
- ) raises (UnknownObjectGroupID, AccessViolation)
54Home Location Register - 3/4
- void paging (
- in string object_group_name,
- in long timeout
- ) raises (PagingNotSupported, ObjectGroupNotFound,
RequestTimeout) - ObjectIdList list_home_domain_services ()
- Object resolve_home_domain_references (
- in ObjectId identifier
- ) raises(InvalidName)
55Home Location Register - 4/4
- void home_domain_bind (
- in Name n,
- in Object obj
- ) raises (NotFound, CannotProceed, InvalidName,
AlreadyBound) - Object home_domain_resolve (
- in Name n
- ) raises (NotFound, CannotProceed, InvalidName)
- void home_domain_unbind (
- in Name n
- ) raises (NotFound, CannotProceed, InvalidName)
56Handoff
- Handoff in general
- Network Initiated Handoff
- Terminal Initiated Handoff
- Access Recovery
57Handoff and Access Recovery - 1/3
- Handoff consists of three distinct phases
- the information gathering phase,
- the decision phase, and
- the execution phase.
- Bridge handoff is a part of the execution phase
in cases, where the mobile terminal moves from
one bridging domain to another. - There are two different cases of handoff
- the backward handoff and
- the forward handoff (access recovery).
58Handoff and Access Recovery - 2/3
- The backward one is the normal case
- The forward one is performed
- as a location update
- in order to re-establish communication after a
sudden loss of connectivity. - In the response we use
- the term handoff to mean the backward handoff and
- the term access recovery.
- The handoff may be network initiated or terminal
initiated. - The access recovery is always terminal initiated.
59Handoff and Access Recovery - 3/3
- Create a new bridge association.
- Transfer the responsibility from the old WAB to
the new WAB. - Convert the old bridge association to the
secondary (tunnelled) status. - Update Home Location Entries of the object groups
on the terminal. - Rebind the entries in the Naming Service in the
home domain. - Unbind the names in the Naming Service in the old
visited domain. - Bind the names into the Naming Service in the new
visited domain. - Generate the corresponding mobility events in the
terminal domain as well as in the old and new
visited domains. - Obtain references to services in the new visited
domain and mark as staled those in the old
visited domain.
60Handoff initiation
- Wireless Access Bridge
- oneway do_handoff(
- in sequenceltoctetgt session_id,
- in Object new_wireless_access_bridge,
- in Object status_callback_target,
- in string status_callback_op_name
- )
- Mobile Terminal Bridge
- oneway propose_handoff(
- in sequenceltoctetgt new_wireless_access_bridge_add
ress, - in Object status_callback_target,
- in string status_callback_op_name
- )
61Network Initiated Handoff - 1/2
old WAB
new WAB
MTB
do_handoff
handoff_request
HANDOFF REQ
Store info Do preparations
HANDOFF ACK
SHUTDOWN
SHUTDOWN ACK
HandoffDepartureEvent
Unbind names from NS
INIT
INIT ACK
COOKIE
62Network Initiated Handoff - 2/2
new WAB
HLR
MTB
ACCESS REQ
COOKIE ACK
ACCESS REQ ACK
update_location
ACCESS REP
ACCESS REP ACK
rebind names in NS
TerminalHandoffEvent
HandoffArrivalEvent
handoff_completed
bind names to NS
old WAB
63Handoff methods
- // Called by the old WAB at the new WAB
- void handoff_request(
- in sequenceltoctetgt session_id,
- in SessionState old_wab_state,
- in sequenceltoctetgt old_wab_tunnel, // TCP/IP
endpoint - out sequenceltoctetgt new_terminal_access_point
- ) raises (HandoffFailure)
- // Called by the new WAB at the old WAB
- void handoff_completed(
- in sequenceltoctetgt old_session_id,
- in sequenceltoctetgt new_session_id,
- in HandoffStatus status
- )
64Terminal Initiated Handoff - 1/3
- Optional feature at MTB, must be supported by WAB
- When the propose_handoff operation in the Mobile
Terminal Bridge is invoked, then the terminal
starts the terminal initiated handoff procedure. - The terminal initiated Handoff procedure requires
that the terminal can establish connectivity to
the new Wireless Access Bridge before releasing
the connectivity to the old Wireless Access
Bridge. - If this cannot be done, then the terminal
initiated handoff must be done using the access
recovery mechanism - The Mobile Terminal Bridge sends an ABORT message
to the old WAB and - then carries out the access recovery to the new
WAB.
65Terminal Initiated Handoff - 2/3
new WAB
MTB
propose_handoff
INIT
INIT ACK
COOKIE
ACCESS REQ
COOKIE ACK
ACCESS REQ ACK
HANDOFF REQ
HANDOFF ACK
SHUTDOWN
old WAB
66Terminal Initiated Handoff - 3/3
old WAB
new WAB
HLR
MTB
SHUTDOWN ACK
handoff_request
Store info
update_location
HandoffDepartureEvent
Unbind names from NS
rebind names in NS
ACCESS REP
ACCESS REP ACK
HandoffArrivalEvent
TerminalHandoffEvent
handoff_completed
bind names to NS
67Access Recovery - 1/4
MTB
WAB
TerminalDropoutEvent
INIT
INIT ACK
COOKIE
RECOVERY REQ
COOKIE ACK
RECOVERY ACK
68Access Recovery - 2/4
MTB
old WAB
SYNC
SYNC ACK
SYNC
SYNC ACK
Missing data and acknowledgements
AccessRecoveryEvent if AccessDropoutEvent
delivered
TerminalRecoveryEvent
69Access Recovery - 3/4
new WAB
old WAB
HLR
MTB
recovery_request
Store info
update_location
RECOVERY REP
rebind names in NS
RECOVERY ACK
SYNC
SYNC ACK
SYNC
SYNC
SYNC ACK
SYNC ACK
Missing data and acknowledgements
Missing data and acknowledgements
70Access Recovery - 4/4
new WAB
old WAB
MTB
recovery_completed
HandoffDeparturelEvent
Unbind names from NS
TerminalHandoffEvent
HandoffArrivalEvent
bind names to NS
71Access Recovery Methods
- // Called by the new WAB at the old WAB
- void recovery_request(
- in sequenceltoctetgt session_id,
- out SessionState old_wab_state,
- out sequenceltoctetgt old_wab_tunnel // TCP/IP
endpoint - out sequenceltoctetgt new_terminal_access_point
- ) raises (HandoffFailure)
- // Called by the new WAB at the old WAB
- void recovery_completed(
- in sequenceltoctetgt old_session_id,
- out sequenceltoctetgt new_session_id,
- in HandoffStatus status
- )
72Issues to be discussed
- Use of Notification Service
- Use of Interoperable Naming Service
- Use of Messaging Service
- Use of generic ORB Services
73Mobility Events - 1/3
74Mobility Events - 2/3
- module Mobility
- struct TerminalHandoffEvent
- DomainId new_visited_domain
-
- struct HandoffDepartureEvent
- TerminalName moving_terminal
- DomainId new_visited_domain
-
- struct HandoffArrivalEvent
- TerminalName moving_terminal
- DomainId old_visited_domain
-
75Mobility Events - 3/3
- struct TerminalDropoutEvent
-
- struct TerminalRecoveryEvent
-
- struct AccessDropoutEvent
- TerminalName dropped_terminal
-
- struct AccessRecoveryEvent
- TerminalName dropped_terminal
-
76Use of Interoperable Naming Service - 1/2
- This specification does not affect the
specification of Interoperable Naming Service. - The ORB Service Agent provides operations so that
the applications on a mobile terminal need only
once bind a name into the Naming Service in a
visited domain. - The ORB Service Agent together with the Wireless
Access Bridge moves the name bindings from the
Naming Service in the old visited domain to that
in the new visited domain during the handoff
procedure. - The WAB also takes care that entries in the
Naming Service are removed if the terminal
disappears and does not re-appear in an
implementation depend time-interval.
77Use of Interoperable Naming Service - 2/2
- The object references, the names of which are
bound into the Naming Service in the home domain
through the ORB Service Agent, are automatically
updated during the handoff procedure. - Naming Conventions
- recommendation
- mobile_terminal/lthome_domain_namegt/ltterminal_namegt
/ltobject_namegt
78Use of Messaging Service
- This proposal does not give any specific uses for
Messaging Service, nor is use of Messaging
Service in any way affected by the proposed
technology. - However, it is possible to reduce the amount of
messages sent with Messaging Service somewhat
with a simple optimization. - Since the Wireless Access Bridges used by the
mobile terminal are better informed on the
terminal's whereabouts and connectivity, - it would be beneficial to implement Messaging
Router functionality in the WAB.
79Use of other ORB Services
- The mobile terminal will also need to access
CORBAservices in other ORB domains. - ORB Service Agent is provided for use by the
mobile terminal. - The ORB Service Agent provides facilities for the
mobile terminal to query and access available
services in both the visited domain and the
terminal's home domain. - In case of handoff, the ORB Service Agent
automatically receives services available in the
new visited domain. - However, an application need to resolve object
references.
80Generic Invitation Service - 1/2
- Although not requested in the RFP, this proposal
specifies a generic invitation server. - Its objective is to provide an interface that
allows objects in other domains to contact the
terminal. - It is recommended that this interface is bound to
the Naming Service in the visited and home
domains. - When an application wants to contact an
application on the mobile terminal, then it
invokes the invite operation.
81Generic Invitation Service - 2/2
- enum InvitationStatus
- INVITATION_ACCEPTED, INVITATION_REJECTED
-
- interface InvitationServer
- void invite(
- in string invating_party, // name of user
- in string invating_application, // name of
application - out InivitationStatus status,
- out string reply_message,
- out Object peer_object)
-
82Homeless Terminals
83Homeless Terminals
- A "homeless terminal" is a terminal that does not
have a home domain and hence an entry in a Home
Location Register. - In the current specification the Home Location
Register provides the means for a domain to
authenticate the visiting terminal - If the terminal does not have an HLR entry, then
it is impossible to do ORB-level authentication
before the Wireless Access Bridge accepts the
establishment of a GIOP Session. - A "homeless terminal" MUST use NIL as its HLR
reference. - A Wireless Access Bridge MAY reject an access
request with NIL as the HLR reference.
84Conformance Points
- Wireless Access
- Terminal Mob ility
- Optional features
85Wireless Access Conformance Point
- Initial access,
- access recovery, and
- either GIOP/UDP mapping
- a subset of GIOP Session Protocol
- or GIOP/WAP WTP mapping.
86Terminal Mobility Conformance Point - 1/4
- In the terminal domain
- - terminal bootstrap,
- - initial access,
- - access recovery,
- - network initiated handoff,
- - ORB Service Agent interface,
- - mobility events, and
- - GIOP/UDP mapping.
87Terminal Mobility Conformance Point - 2/4
- In the visited domain
- - Initial access,
- - access recovery,
- - network initiated handoff,
- - terminal initiated handoff,
- - support of ORB Service Agent, and
- - GIOP/UDP mapping.
88Terminal Mobility Conformance Point - 3/4
- In the home domain
- - Home Location Register interface.
- - Obs. HLR must implement the paging function.
- If a paging is not supported, then the paging
operation MUST raise the exception
PagingNotSupported.
89Terminal Mobility Conformance Point - 4/4
- Optional features include
- - Terminal initiated handoff in the terminal
domain, - - GIOP-WTP mapping in the terminal and visited
domains, - - mobility events in the visited domain, and
- - support of "homeless" terminals in the visited
domain.
90Conclusions
91Conclusions
- Architectural design complete, mature and
validated - DOLMEN experience reused
- Interface design complete
- only minor modifications expected
- Functional design almost complete
- some details need to be verified
- GIOP mappings
- UDP mapping initial proposal based on SCTP,
alternatives possible - WAP WTP mapping to be completed but
straightforward
92Thank you for your attention