lper - SIP Design Model::com. gucas. sip::SIPHelper SipServlet - SIPReference: javax. servlet. sip::SipServlet SipServletMessage - SIPReference: javax. servlet. sip::SipServletMes FIGURE 16.6 SIP classes defined in IBM rational software architect. to keep track of the whole process and confirm the quality of the design. Such a diagram is similar to FSM. 16.2.3 Petri Net Cluster Here, we have to emphasize another important formal graphical tool for mod- eling and simulation, Petri Net. As there are various kinds of Petri Nets with different features, we call these Petri Nets as Petri Net Cluster. Petri Net Cluster contains Hierarchical Petri Net, Colored Petri Net, Temporal Petri Net, and SO on, each of which can be utilized for specific SIP modeling and simulation. Hierarchical Petri Net (HPN) introduces a hierarchical modeling method, which gives a high abstraction ability to synthesize and simplify relevant objects to simulate a realistic system. The top-down and bottom-up methods are often used for hierarchical modeling with an idea of substitution transition. The idea of substitution transition is to allow the user to relate a transition and its surrounding arcs to a more complex Petri Net, called subnet, which could give a more precise and detailed description of the activity represented by the substitution transition [26]. While modeling a large and complex system such as a SIP system, when designing a low hierarchy model, you don't need to consider complex realiza- tions just like a black box. What's more, the overall system can be reduced to the generation of smaller models that integrate related activities [10]. Fig- ure 16.7 shows the first hierarchy of a simple SIP model and a subnet of UA1. (A) The first hierarchy of SIP (B) The subnet model of UA1 C 2009 by Taylor & Francis Group, LLC SIP Modeling and Simulation Message Message Proxy Proxy UA (2) Message Message The first hierarchy of SIP User agent User agent Message Message Message Message TU-REQ RES-TU TU-RES REQ-TU INVITE client Non-INVITE client