⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2543.txt

📁 sip_rfc2543 标准化文档
💻 TXT
📖 第 1 页 / 共 5 页
字号:

   Location service: A location service is used by a SIP redirect or
        proxy server to obtain information about a callee's possible
        location(s). Location services are offered by location servers.
        Location servers MAY be co-located with a SIP server, but the
        manner in which a SIP server requests location services is
        beyond the scope of this document.

   Parallel search: In a parallel search, a proxy issues several
        requests to possible user locations upon receiving an incoming
        request.  Rather than issuing one request and then waiting for
        the final response before issuing the next request as in a
        sequential search , a parallel search issues requests without
        waiting for the result of previous requests.

   Provisional response: A response used by the server to indicate
        progress, but that does not terminate a SIP transaction. 1xx
        responses are provisional, other responses are considered final.

   Proxy, proxy server: An intermediary program that acts as both a
        server and a client for the purpose of making requests on behalf
        of other clients. Requests are serviced internally or by passing
        them on, possibly after translation, to other servers. A proxy
        interprets, and, if necessary, rewrites a request message before
        forwarding it.

   Redirect server: A redirect server is a server that accepts a SIP
        request, maps the address into zero or more new addresses and
        returns these addresses to the client. Unlike a proxy server ,
        it does not initiate its own SIP request. Unlike a user agent
        server , it does not accept calls.

   Registrar: A registrar is a server that accepts REGISTER requests. A
        registrar is typically co-located with a proxy or redirect
        server and MAY offer location services.






Handley, et al.             Standards Track                    [Page 10]

RFC 2543            SIP: Session Initiation Protocol          March 1999


   Ringback: Ringback is the signaling tone produced by the calling
        client's application indicating that a called party is being
        alerted (ringing).

   Server: A server is an application program that accepts requests in
        order to service requests and sends back responses to those
        requests.  Servers are either proxy, redirect or user agent
        servers or registrars.

   Session: From the SDP specification: "A multimedia session is a set
        of multimedia senders and receivers and the data streams flowing
        from senders to receivers. A multimedia conference is an example
        of a multimedia session." (RFC 2327 [6]) (A session as defined
        for SDP can comprise one or more RTP sessions.) As defined, a
        callee can be invited several times, by different calls, to the
        same session. If SDP is used, a session is defined by the
        concatenation of the user name , session id , network type ,
        address type and address elements in the origin field.

   (SIP) transaction: A SIP transaction occurs between a client and a
        server and comprises all messages from the first request sent
        from the client to the server up to a final (non-1xx) response
        sent from the server to the client. A transaction is identified
        by the CSeq sequence number (Section 6.17) within a single call
        leg.  The ACK request has the same CSeq number as the
        corresponding INVITE request, but comprises a transaction of its
        own.

   Upstream: Responses sent in the direction from the user agent server
        to the user agent client.

   URL-encoded: A character string encoded according to RFC 1738,
        Section 2.2 [13].

   User agent client (UAC), calling user agent: A user agent client is a
        client application that initiates the SIP request.

   User agent server (UAS), called user agent: A user agent server is a
        server application that contacts the user when a SIP request is
        received and that returns a response on behalf of the user. The
        response accepts, rejects or redirects the request.

   User agent (UA): An application which contains both a user agent
        client and user agent server.

   An application program MAY be capable of acting both as a client and
   a server. For example, a typical multimedia conference control
   application would act as a user agent client to initiate calls or to



Handley, et al.             Standards Track                    [Page 11]

RFC 2543            SIP: Session Initiation Protocol          March 1999


   invite others to conferences and as a user agent server to accept
   invitations. The properties of the different SIP server types are
   summarized in Table 1.


    property                   redirect  proxy   user agent  registrar
                                server   server    server
    __________________________________________________________________
    also acts as a SIP client     no      yes        no         no
    returns 1xx status           yes      yes       yes         yes
    returns 2xx status            no      yes       yes         yes
    returns 3xx status           yes      yes       yes         yes
    returns 4xx status           yes      yes       yes         yes
    returns 5xx status           yes      yes       yes         yes
    returns 6xx status            no      yes       yes         yes
    inserts Via header            no      yes        no         no
    accepts ACK                  yes      yes       yes         no


   Table 1: Properties of the different SIP server types


1.4 Overview of SIP Operation

   This section explains the basic protocol functionality and operation.
   Callers and callees are identified by SIP addresses, described in
   Section 1.4.1. When making a SIP call, a caller first locates the
   appropriate server (Section 1.4.2) and then sends a SIP request
   (Section 1.4.3). The most common SIP operation is the invitation
   (Section 1.4.4). Instead of directly reaching the intended callee, a
   SIP request may be redirected or may trigger a chain of new SIP
   requests by proxies (Section 1.4.5). Users can register their
   location(s) with SIP servers (Section 4.2.6).

1.4.1 SIP Addressing

   The "objects" addressed by SIP are users at hosts, identified by a
   SIP URL. The SIP URL takes a form similar to a mailto or telnet URL,
   i.e., user@host.  The user part is a user name or a telephone number.
   The host part is either a domain name or a numeric network address.
   See section 2 for a detailed discussion of SIP URL's.

   A user's SIP address can be obtained out-of-band, can be learned via
   existing media agents, can be included in some mailers' message
   headers, or can be recorded during previous invitation interactions.
   In many cases, a user's SIP URL can be guessed from their email
   address.




Handley, et al.             Standards Track                    [Page 12]

RFC 2543            SIP: Session Initiation Protocol          March 1999


   A SIP URL address can designate an individual (possibly located at
   one of several end systems), the first available person from a group
   of individuals or a whole group. The form of the address, for
   example, sip:sales@example.com , is not sufficient, in general, to
   determine the intent of the caller.

   If a user or service chooses to be reachable at an address that is
   guessable from the person's name and organizational affiliation, the
   traditional method of ensuring privacy by having an unlisted "phone"
   number is compromised. However, unlike traditional telephony, SIP
   offers authentication and access control mechanisms and can avail
   itself of lower-layer security mechanisms, so that client software
   can reject unauthorized or undesired call attempts.

1.4.2 Locating a SIP Server

   When a client wishes to send a request, the client either sends it to
   a locally configured SIP proxy server (as in HTTP), independent of
   the Request-URI, or sends it to the IP address and port corresponding
   to the Request-URI.

   For the latter case, the client must determine the protocol, port and
   IP address of a server to which to send the request. A client SHOULD
   follow the steps below to obtain this information, but MAY follow the
   alternative, optional procedure defined in Appendix D. At each step,
   unless stated otherwise, the client SHOULD try to contact a server at
   the port number listed in the Request-URI. If no port number is
   present in the Request-URI, the client uses port 5060. If the
   Request-URI specifies a protocol (TCP or UDP), the client contacts
   the server using that protocol. If no protocol is specified, the
   client tries UDP (if UDP is supported). If the attempt fails, or if
   the client doesn't support UDP but supports TCP, it then tries TCP.

   A client SHOULD be able to interpret explicit network notifications
   (such as ICMP messages) which indicate that a server is not
   reachable, rather than relying solely on timeouts. (For socket-based
   programs: For TCP, connect() returns ECONNREFUSED if the client could
   not connect to a server at that address. For UDP, the socket needs to
   be bound to the destination address using connect() rather than
   sendto() or similar so that a second write() fails with ECONNREFUSED
   if there is no server listening) If the client finds the server is
   not reachable at a particular address, it SHOULD behave as if it had
   received a 400-class error response to that request.

   The client tries to find one or more addresses for the SIP server by
   querying DNS. The procedure is as follows:





Handley, et al.             Standards Track                    [Page 13]

RFC 2543            SIP: Session Initiation Protocol          March 1999


        1.   If the host portion of the Request-URI is an IP address,
             the client contacts the server at the given address.
             Otherwise, the client proceeds to the next step.

        2.   The client queries the DNS server for address records for
             the host portion of the Request-URI. If the DNS server
             returns no address records, the client stops, as it has
             been unable to locate a server. By address record, we mean
             A RR's, AAAA RR's, or other similar address records, chosen
             according to the client's network protocol capabilities.


        There are no mandatory rules on how to select a host name
        for a SIP server. Users are encouraged to name their SIP
        servers using the sip.domainname (i.e., sip.example.com)
        convention, as specified in RFC 2219 [16]. Users may only
        know an email address instead of a full SIP URL for a
        callee, however. In that case, implementations may be able
        to increase the likelihood of reaching a SIP server for
        that domain by constructing a SIP URL from that email
        address by prefixing the host name with "sip.". In the
        future, this mechanism is likely to become unnecessary as
        better DNS techniques, such as the one in Appendix D,
        become widely available.

   A client MAY cache a successful DNS query result. A successful query
   is one which contained records in the answer, and a server was
   contacted at one of the addresses from the answer. When the client
   wishes to send a request to the same host, it MUST start the search
   as if it had just received this answer from the name server. The
   client MUST follow the procedures in RFC1035 [15] regarding DNS cache
   invalidation when the DNS time-to-live expires.

1.4.3 SIP Transaction

   Once the host part has been resolved to a SIP server, the client
   sends one or more SIP requests to that server and receives one or
   more responses from the server. A request (and its retransmissions)
   together with the responses triggered by that request make up a SIP
   transaction.  All responses to a request contain the same values in
   the Call-ID, CSeq, To, and From fields (with the possible addition of
   a tag in the To field (section 6.37)). This allows responses to be
   matched with requests. The ACK request following an INVITE is not
   part of the transaction since it may traverse a different set of
   hosts.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -