SIP is a widely adopted application layer protocol used in VoIP calls and confernecing applciations and in IMS architeture or pure packet switched networks ...
Skiptocontent
SIPisawidelyadoptedapplicationlayerprotocolusedinVoIPcallsandconfernecingapplciationsandinIMSarchitetureorpurepacketswitchednetworks.
MoreonSIP,itspacketstructure,transactionanddialogs,looseandstrictrecordrouting,locationservice,nearandfarendnating,andcommonlyusedSIPCallflowslikeRedirection,forking,clicktoDial–https://telecom.altanai.com/2013/07/13/sip-session-initiaion-protocol/(opensinanewtab)
SIPRequestandRepsosnes
TraditionalSIPheadersforCallsetupareINVITE,ACKandteardownareCANCELorBYE,howeverwithmoreadoptionnewermethodsspecifictoserviceswereaddedsuchas:
MESSAGEMethodsforInstantMessagebasedservicesSUBSCRIBE,NOTIFYstandardisedbyEventnotificationextensionRFC3856PUBLISHtopushpresenceinformationtothenetwork
OutliningtheSIPRequestsandResponsesintablesbelow,
RequestMessage
RequestMessageDescriptionREGISTERAClientusethismessagetoregisteranaddresswithaSIPserverINVITEAUserorServiceusethismessagetoletanotheruser/serviceparticipateinasession.Thebodyofthismessagewouldincludeadescriptionofthesessiontowhichthecalleeisbeinginvited.ACKThisisusedonlyforINVITEindicatingthattheclienthasreceivedafinalresponsetoanINVITErequestCANCELThisisusedtocancela pendingrequestBYEAUserAgentClientusethismessagetoterminatethecallOPTIONSThisisusedtoqueryaserveraboutitscapabilities
ResponseMessage
CodeCategoryDescription1xxProvisionalTherequesthasbeenreceivedandprocessingiscontinuing2xxSuccessAnACK,toindicatethattheactionwassuccessfullyreceived,understood,andaccepted.3xxRedirectionFurtheractionisrequiredtoprocessthisrequest4xxClientErrorTherequestcontainsbadsyntaxandcannotbefulfilledatthisserver5xxServerErrorTheserverfailedtofulfillanapparentlyvalidrequest6xxGlobalFailureTherequestcannotbefulfilledatanyserver
SIPheaders
Displaynames
Fromoriginatorssipuri
CSeqorCommandSequencecontainsanintegerandamethodname.TheCSeqnumberisincrementedforeachnewrequestwithinadialogandisatraditionalsequencenumber.
Contact–SIPURIthatrepresentsadirectroutetotheoriginatorusuallycomposedofausernameatafullyqualifieddomainname(FQDN),alsoIPaddressesarepermitted.TheContactheaderfieldtellsotherelementswheretosendfuturerequests.
Max-Forwards-tolimitthenumberofhopsarequestcanmakeonthewaytoitsdestination.Itconsistsofanintegerthatisdecrementedbyoneateachhop.
Content
Content-Type–descriptionofthemessagebody.
Content-Type:application/h.323
Content-Type:message/sip
Content-Type:application/sdp
Content-Type:multipart/signed;
protocol="application/pkcs7-signature";
micalg=sha1;boundary=boundary42
Content-Type:application/pkcs7-signature;name=smime.p7s
ContentEncoding
Content-Encoding:text/plain
ContentLanguage
Content-Language:en
Content-Length–anoctet(byte)countofthemessagebody.
Content-Disposition
describeshowthemessagebodyor,formultipartmessages,amessagebodypartistobeinterpretedbytheUACorUAS.ItextendstheMIMEContent-Type
DispositionTypes:
“session”–bodypartdescribesasession,foreithercallsorearly(pre-call)media“render”–bodypartshouldbedisplayedorotherwiserenderedtotheuser.“icon”–bodypartcontainsanimagesuitableasaniconicrepresentationofthecallerorcallee“alert”–bodypartcontainsinformation,suchasanaudioclip
Accept
Accept–acceptableformatslikeapplication/sdporcurrency/dollars
HeaderfieldwhereproxyACKBYECANINVOPTREG
AcceptR-o-om*oAccept2xx---om*oAccept415-c-ccc
AnemptyAcceptheaderfieldmeansthatnoformatsareacceptable.
Accept-Encoding
Accept-EncodingR-o-oooAccept-Encoding2xx---om*oAccept-Encoding415-c-ccc
Accept-Language:languagesforreasonphrases,sessiondescriptions,orstatusresponsescarriedasmessagebodiesintheresponse.
Accept-Language:da,en-gb;q=0.8,en;q=0.7
Accept-LanguageR-o-ooo
Accept-Language2xx---om*o
Accept-Language415-c-ccc
Taggloballyuniqueandcryptographicallyrandomwithatleast32bitsofrandomness.identifyadialog,whichisthecombinationoftheCall-IDalongwithtwotags(fromToandFROMheaders)
Call-Iduniquelyidentifyasession
contact–sipurlalternativefordirectrouting
Encryption
Expires–whenmsgcontentisnolongervalid
MandatorySIPheaders
INVITEsip:[email protected]/2.0
Via:SIP/2.0/UDPhost.domain.com:5060
From:Bob
To:Altanai
Call-ID:[email protected]
CSeq:1INVITE
Informationalheaders
Call-Infoadditionalinformationforexample,throughawebpage.The“card”parameterprovidesabusinesscard,forexample,invCard[36]orLDIF[37]formats.AdditionaltokenscanberegisteredusingIANA
Call-Info:http://wwww.example.com/alice/photo.jpg;purpose=icon,http://www.example.com/alice/;purpose=info
ContactContact:“Mr.Watson”;q=0.7;expires=3600,“Mr.Watson”[email protected];q=0.1m:;expires=60
Priorityindicatestheurgencyoftherequestasperceivedbytheclient.canhavethevalues“non-urgent”,“normal”,“urgent”,and“emergency”,butadditionalvaluescanbedefinedelsewhere
Subject:Atornadoisheadingourway!Priority:emergency
or
Subject:WeekendplansPriority:non-urgent
Subjectsummaryorindicatesthenatureofcall
Subject:Needmoreboxess:TechSupport
Supportedenumeratesalltheextensionssupported.cancontainlistofoptiontags,described
Supported:100relk:100rel
Unsupportedfeaturesnotsupported
Unsupported:foo
User-AgentinformationabouttheUACoriginatingtherequest.
User-Agent:SoftphoneBeta1.5
OrganizationconveysthenameoftheorganizationtowhichtheSIPelementissuingtherequestorresponsebelongs.
Organization:AltanaiTelecomCo.
Warningadditionalinformationaboutthestatusofaresponse.Listofwarn-code
300Incompatiblenetworkprotocol:301Incompatiblenetworkaddressformats:302Incompatibletransportprotocol:303Incompatiblebandwidthunits:304Mediatypenotavailable:305Incompatiblemediaformat:306Attributenotunderstood:307Sessiondescriptionparameternotunderstood:330Multicastnotavailable:331Unicastnotavailable:370Insufficientbandwidth:399Miscellaneouswarning:1xxand2xxhavebeentakenbyHTTP/1.1.
Warning:307isi.edu“Sessionparameter‘foo’notunderstood”Warning:301isi.edu“Incompatiblenetworkaddresstype‘E.164′”
AutheticationandAuthorizationrelatedheaders
Authentication-InfomutualauthenticationwithHTTPDigest.AUASMAYincludethisheaderfieldina2xxresponsetoarequestthatwassuccessfullyauthenticatedusingdigestbasedontheAuthorizationheaderfield.
Authentication-Info:nextnonce=”47364c23432d2e131a5fb210812c”
AuthorizationauthenticationcredentialsofaUA
Authorization:Digestusername=”Alice”,realm=”atlanta.com”,nonce=”84a4cc6f3082121f32b42a2187831a9e”,response=”7587245234b3434cc3412213e5f113a5432″
Proxy-Authenticatecontainsanauthenticationchallenge.
Proxy-Authenticate:Digestrealm=”atlanta.com”,domain=”sip:ss1.carrier.com”,qop=”auth”,nonce=”f84f1cec41e6cbe5aea9c8e88d359″,opaque=””,stale=FALSE,algorithm=MD5
Timers
exponentialback-offonre-transmissions
SessionExpireHeaderFeild
limitthetimeperiodoverwhichastatefulproxymustmaintainstateinformation.options
Useragentsmustteardownthecallaftertheexpirationofthetimer,orallercansendre-INVITEstorefreshthetimer,enablinga“keepalive”mechanismforSIP.
SDP(SessionDescriptionProtocol)
SIPcanbearmanykindsofMIMEattachments,onesuchisSDP.Itisastandardforprotocoldefinitionforexchangeofmedia,metadataandothertransportrealtedattributesbetweentheparticpantsbeforeestablishingaVoIPcall.
SDPsessiondescriptionisentirelytextualusingtheISO10646charactersetinUTF-8encodinganddescribedbyapplication/SDPmediatype.
ItshouldbenotedthatSDPitselfdoesnotincorporateatransportprotocolandcanbeusedwithdifferenceprotoclslikeSessionannouncementproctols(SAP),SIP,HTTP,ElectronicMAIlMIMEextension,RTSPetc.
IncaseofSIPSDPisencapsulatedinsideofSIPpacketanduseoffer/answermodeltoconveyinformationaboutmediastreaminmultimediasession.
SDPbodycontains2parts:sessionbasedsectionstartingwithv=lineandmediabsesctionstartingwithm=lineMediaandTransportInformationcancontaintypeofmedialikevideo,audio,transportprotocollikeRTP/UDP/IP,H.320andformatofthemediasuchasH.261video,MPEGvideo,etc.
SessionDescriptioninSDP
protocolversion(v=)protocolversionmostlyversion0
originatorandsessionidentifier(o=)
o=
o=-64768885762848743442INIP4127.0.0.1
sessionname(s=)andsessioninformation(i=)sessionnameistextualandcancontainemptyspaceorevens=-butmustnotbeempty.Sessioninfomrationisoptionaltextualinformationaboutthesession
URIofdescription(u=)
EmailAddressandPhoneNumber(“e=”and“p=”)
BothareoptionalfreetextstringSHOULDbeintheISO-10646charactersetwithUTF-8encoding
NothethatifgiventhePhonenumbersSHOULDfollowinternationalpublictelecommunicationnumberspecification(ITU-TRecommendationE.164)andbeprecededbya“+”.Spacesandhyphensmaybeusedtosplitupaphonefieldtoaidreadabilityifdesired.
[email protected]=+1617555-6011
ConnectionData(c=)connectioninformation—notrequiredifincludedinallmediainwhichmediaspecificconneciondataoverrideoverallsessionconnectiondata
c=
c=INIP4172.31.90.251
Ifthesessionismulticast,theconnectionaddresswillbeanIPmulticastgroupaddress.TTLshoudlbepresentinIPv4multicastaddress.IfconnectionisunicasttheaddresscontainstheunicastIPaddressoftheexpecteddatasourceordatarelayordatasink.
Bandwidth(b=)interpretedaskilobitspersecondbydefault
b=:
EncryptionKeys(k=)OnlyisSDPisexchangedinsecureandtrustedchannel,keysvabeexcahngedonthisSDPfield.Althoughthisprocessisnotrecomended,
k=clear:k=base64:k=uri:k=prompt
Attributes(a=)
extendstheSDPwithvalueslikeflags
a=inactive,a=sendonly,a=sendrecv,a=recvonly
MappingtheEncoderSpecfrom
a=rtpmap:/[/]
a=rtpmap:96opus/48000/2a=rtpmap:0PCMU/8000a=rtpmap:8PCMA/8000a=rtpmap:9G722/8000a=rtpmap:101telephone-event/48000a=rtpmap:97telephone-event/8000
ConferenecTypelike“broadcast”,“meeting”,“moderated”,“test”,
a=type:
Orientationportraitorlandscapeforwhiteboardsession
a=orient:
ICEcandidates
a=ice-pwd:86701d63e2d96ec42268679a
a=ice-ufrag:948a1316
a=rtcp-12133xr:rcvr-rtt=all:10000stat-summary=loss,dup,jitt,TTLvoip-metrics
Framepersecondforvideo
a=framerate:
Qualitybetween0–10(10beststillimage,5default,0wrst)
a=quality:
FormatspecificParameters
a=fmtp:
a=rtpmap:114AMR-WB/16000/1
a=fmtp:114mode-change-capability=2;max-red=220
a=rtpmap:113AMR-WB/16000/1
a=fmtp:113octet-align=1;mode-change-capability=2;max-red=220
a=rtpmap:102AMR/8000/1
a=fmtp:102mode-change-capability=2;max-red=220
a=rtpmap:115AMR/8000/1
a=fmtp:115octet-align=1;mode-change-capability=2;max-red=220
a=rtpmap:105telephone-event/16000
a=fmtp:1050-15
a=rtpmap:101telephone-event/8000
a=fmtp:1010-15
TimeDescriptioninSDP
Timing(t=)timethesessionisactive)
t=
Iftheissettozero,thenthesessionisnotbounded,thoughitwillnotbecomeactiveuntilafterthe.Iftheisalsozero,thesessionisregardedaspermanent.
t=00
RepeatTimes(r=)
zeroormorerepeattimesforschedulingasession
r=
timezoneadjustments(z=)
z=….
usefulforscejdulingsessionduringtransationtodaylightvsavingtostandardtimeandviceversa
MediaDescriptioninSDP
ForRTP,thedefaultisthatonlytheeven-numberedportsareusedfordatawiththecorrespondingone-higheroddportsusedfortheRTCPbelongingtotheRTPsession
m=…
m=audio20098RTP/AVP0101
willstreamRTPon20098andRTCPon20099
FormultipletransportportspairsofRTP,RTCPstreamarespecified
m=/…
m=audio20098/2RTP/AVP0101willstreamonepaironRTP20098,RTCP20099andRTP20100,RTCP20101
Ifnon-contiguousportsarerequired,theymustbesignalledusingaseparateattributelikeexample,“a=rtcp:”
AdditioanSDPfeatures:Inadditiontonormalunicastsessions,SDPcanalsoconverymulticastgroupaddressformediaonIPmulticastsession.Private(encryptionofSDP)orpublicsessionarenottreateddifferentlybySDPandtheyareentorelyafunctionofimplementingmechanismlikeSIPorSAP.OptiopnalSDPparamsincludeURI,Categorisation“a=cat:”,Internationalisationetc
Example1:TypicalAudiocallSIPINVITEshowingSIPheadersinblueandSDPingreenbelow
INVITEnbspsip:[email protected]/2.0
Via:SIP/2.0/UDPx.x.x.x:5060branch=z9hG4bK400fc6e6
From:"123456789"ltsip:[email protected]=as42e2ecf6
To:ltsip:[email protected]
Contact:ltsip:[email protected]
Call-ID:[email protected]
CSeq:102INVITE
User-Agent:nbspMatrixSwitch
Date:Thu,22Dec200518:38:28GMT
Allow:INVITE,ACK,CANCEL,OPTIONS,BYE,REFER
Content-Type:application/sdp
Content-Length:268
v=0
o=root1404014040INIP4x.x.x.x
s=session
c=INIP4x.x.x.x
t=00
m=audio26784RTP/AVP0818101
a=rtpmap:0PCMU/8000
a=rtpmap:8PCMA/8000
a=rtpmap:18G729/8000
a=rtpmap:101telephone-event/8000
a=fmtp:1010-16
a=fmtp:18nbspannexb=no----
c=*(connectioninformation-optionalifincludedatsession-level)
b=*(bandwidthinformation)
a=*(zeroormoremediaattributelines)
TheaboveSDPshows4supportedmediacodecsonaudiostreamwhichare0PCMU,8PCMA,18G729andfinally101usedfortelephoneevents.ItalsoshowsRTP/AVPasRTPprofileanddoesnotcontainanym=cideolinewhichshowsthatthisendpointdoesnotwantavideocall,onlyanaudioone.
Example2:VideoVallSIPinvitefromLinphone
SIPURIParams
InternetAssignedNumberAuthority(IANA)UniversalResourceIdentifier(URI)ParameterRegistrydefinesURIparamsthatcanbesuedalongwithSIPscheme
sip:user:password@host:port;uri-parameters?headers
compparam
signallingcompressionofSIPmessages
sip:[email protected];comp=sigcompVia:SIP/2.0/UDPserver1.foo.com:5060;branch=z9hG4bK87a7;comp=sigcomp
TheaobveexmapleindicatesthattherequesthastobecompressedusingSigComp
transport-param
SIPcanuseanynetworktransportprotocol.ParameternamesaredefinedforUDP(RFC768),TCP(RFC761),andSCTP(RFC2960).ForaSIPSURI,thetransportparameterMUSTindicateareliabletransport.
“transport=” (“udp” /“tcp” /“sctp” /“tls” /“ws”/other-transport)
sip:alice:[email protected];transport=tcp
maddrpaarm
Theserveraddress(detsiantionaddress,port,transport)tobecontactedforthisuser,overridinganyaddressderivedfromthehostfield.
Althoughdiscouraged,maddrURIparamhasbeenusedasasimpleformofloosesourcerouting.ItallowsaURItospecifyaproxythatmustbetraverseden-routetothedestination.
user-param
“user=” (“phone” “ip” “dialstring” other-user)
sip:1-212-555-1212:[email protected];user=phone
sip:123;[email protected];user=dialstring
method-param
“method=”Method
sip:atlanta.com;method=REGISTER?to=alice%40atlanta.com
annc-parameters(announcement)
ANNC-URLsip‑ind annc‑ind “@” hostport annc‑parameters uri‑parameters
sip:[email protected];\;play=file://fs.example.net//clips/my-intro.dvi;\;content-type=video/mpeg%3bencode%d3314M-25/625-50
sip-ind -“sip:” /“sips:”
annc-ind -“annc”
annc-parameters“;” play‑param[“;” delay‑param][“;” duration‑param][“;” repeat‑param][“;” locale‑param][“;” variable‑params][“;” extension‑params]
play-param–“play=” prompt‑url
prompt-url–“/provisioned/” announcement‑id
announcement-id =1*(ALPHA /DIGIT)
content-param“content‑type=” MIME‑type
VoiceXMLMediaServices
dialog-param“voicexml=” vxml-url; vxml-urlfollowstheURIsyntax
method-param–“method=” (“get” /“post”)
postbody-param-“postbody=” token
ccxml-param–“ccxml=” json‑value
aai-param-“aai=” json‑value
json-value–false /null /true /object /array /number /string
sip:[email protected];\voicexml=http://appserver.example.com/promptcollect.vxml;\maxage=3600;maxstale=0
dialog-params(promptandcollect)
DIALOG-URL =sip-ind dialog-ind “@” hostport dialog‑parameters
ttl-param(time-to-live)
ttlparameterdeterminesthetime-to-livevalueoftheUDPmulticastpacketandMUSTonlybeusedifmaddrisamulticastaddressandthetransportprotocolisUDP.
sip:[email protected];maddr=239.255.255.1;ttl=15
causeparam
“cause”EQUALStatus-Code;404Unknown/Notavailable;486Userbusy;408Noreply;302Unconditional;487Deflectionduringalerting;480Deflectionimmediateresponse;503Mobilesubscribernotreachable;380Servicenumbertranslation RFC8119–Section2
sip:[email protected];target=bob%40example.com;cause=486
SIPResponses
1xx—ProvisionalResponses
responsethattellstoitsrecipientthattheassociatedrequestwasreceivedbutresultoftheprocessingisnotknownyetwhichcouldbeiftheprocessinghasntfinishedimmediately.Thesendermuststopretransmittingtherequestuponreceptionofaprovisionalresponse.
100Trying180Ringing:Triigersalocalringingatcallersdevice181CallisBeingForwarded:UsedbeforetraneferingtoanotherUAsuchasduringforkingortranfertovoicemailServer
182Queued
183SessioninProgress:conveysinformation.HeadersfieldorSDPbodyhasmordetailsaboutthecall.UsedinannouncementsandIVR+DTMFtoobybeingfollowedby“Earlymedia”.
199EarlyDialogTerminated
2xx—SuccessfulResponses
finalresponsesexpressresultoftheprocessingoftheassociatedrequestandtheyterminatethetransactions.
200OK202Accepted204NoNotification
3xx—RedirectionResponses
Redirectionresponsegivesinformationabouttheuser’snewlocationoranalternativeservicethatthecallershouldtryforthecall.Usedforcaseswhentheservercantsatisfythecallandwantsthecallertotryelsewhere.Afterthisthecallerissupposetoresendtherequesttothenewlocation.
300MultipleChoices301MovedPermanently302MovedTemporarily305UseProxy380AlternativeService
4xx—ClientFailureResponses
negativefinalresponsesindicatingthattherequestcouldn’tbeprocessed duetocallersfault,forreasonssuchastcontainsbadsyntaxorcannotbefulfilledatthatserver.
400BadRequest401Unauthorized402PaymentRequired403Forbidden404NotFound405MethodNotAllowed406NotAcceptable407ProxyAuthenticationRequired408RequestTimeout409Conflict410Gone411LengthRequired412ConditionalRequestFailed413RequestEntityTooLarge414Request-URITooLong415UnsupportedMediaType416UnsupportedURIScheme417UnknownResource-Priority420BadExtension421ExtensionRequired422SessionIntervalTooSmall423IntervalTooBrief424BadLocationInformation428UseIdentityHeader429ProvideReferrerIdentity430FlowFailed433AnonymityDisallowed436BadIdentity-Info437UnsupportedCertificate438InvalidIdentityHeader439FirstHopLacksOutboundSupport470ConsentNeeded480TemporarilyUnavailable481Call/TransactionDoesNotExist482LoopDetected.483TooManyHops484AddressIncomplete485Ambiguous486BusyHere487RequestTerminated488NotAcceptableHere489BadEvent491RequestPending493Undecipherable494SecurityAgreementRequired
5xx—ServerFailureResponses
negativeresponsesbutindicatingthatfaultisatserver’ssideforcasessuchasservercantordoesntwanttorespondthetherequest.
500ServerInternalError501NotImplemented502BadGateway503ServiceUnavailable504ServerTime-out505VersionNotSupported513MessageTooLarge580PreconditionFailure
6xx—GlobalFailureResponses
requestcannotbefulfilledatanyserverwithdefinitiveinformation
600BusyEverywhere603Decline604DoesNotExistAnywhere606NotAcceptable
MandatorySIPheadersinSIPrespone
SIP/2.0200OK
Via:SIP/2.0/UDPhost.domain.com:5060
From:Bob
To:Altanai
Call-ID:[email protected]
CSeq:1INVITE
Via,From,To,Call-ID,and CSeq arecopiedexactlyfromrequest
SIPVoIPsystem Architecture
YoucanreadmoreaboutSIPbasedArchitecturehere:SIPbasedarchitecture
Re-INVITEandTarget-RefreshRequestHandling
AnINVITErequestsentwithinanexistingdialogisknownasare-INVITE.Are-Invitehasanoffer-answerexchangeandcanbeusedtodothefollowing
changethesessionand/ordialogparamschangetheporttowhichmediashouldbesent.changetheconnectionaddressormediatype.Hold/ReleaseandSUSPEND/RESUMErtpstreams(connectionaddressiszero).FAX(T.38andBypass).
Re-INVITEwithSDPuseCases
1.UASrejectsallchangesinparamsinre-INVITE
SitutaionwhereUACestablishesaudioonlycall
SDP1:m=audio30000RTP/AVP0
butlaterwantstoupgradetovideoaswellSDP:
m=audio30000RTP/AVP0
m=video30002RTP/AVP31
UASconfiguredtorejectvideostreams,canrejectthiswitha4XXerrorandgetACK.Nochangestosessionaremade
2.UASreceivesre-INVITEforparambutwantstoacceptfewandrejectothers,itsendsbackSDPwithacceptablechangeswith200OK
ForinstanceUACmovestohighbandwidthaccesspointandwantstoupdateIPofmediastream.Italsowansttoaddvideostream
initialSDP
m=audio30000RTP/AVP0c=INIP4192.0.2.1
newSDPinreINVITE
m=audio30000RTP/AVP0c=INIP4192.0.2.2m=video30002RTP/AVP31c=INIP4192.0.2.2
UASreturnsa200(OK)responsetoacceptIPbutsetstheportofthevideostreamtozeroinitsSDPtoshowrejectedofvideostream.
m=audio31000RTP/AVP0
c=INIP4192.0.2.5
m=video0RTP/AVP31
anotherexampleiswhenUACwwantstoaddanotheraudiocodecandalsoaddvideostreamtosession
orignalSDP
m=audio30000RTP/AVP0
c=INIP4192.0.2.1
re-inviteSDP
m=audio30000RTP/AVP03c=INIP4192.0.2.1m=video30002RTP/AVP31c=INIP4192.0.2.1
againtheUASwilloptionallyacceptthesomeparamcangeslikeaudiocodebutsetvideotonullIPaddress
m=audio31000RTP/AVP03
c=INIP4192.0.2.5
m=video31002RTP/AVP31
c=INIP40.0.0.0
3.UASreceivesre-INVITEbutwaitsforuserintervention
UASreceivesre-INVITEtoaddvideo,butinsteadofrejecting,itpromptsusertopermit.
SoUASprovidesanullIPaddressinsteadofsettingthestreamto‘inactive’becauseinactivestreamsstillneedtoexchangeRTPControlProtocol(RTCP)traffic
m=audio31000RTP/AVP0c=INIP4192.0.2.5m=video31002RTP/AVP31c=INIP40.0.0.0
Laterifuserrejectstheadditionofthevideostream.Consequently,theUASsendsanUPDATErequest(6)settingtheportofthevideostreamtozeroinitsoffer.
m=audio31000RTP/AVP0c=INIP4192.0.2.5m=video0RTP/AVP31c=INIP40.0.0.0
SipDetailed,Callflows,Architecturedescriptions,SIPservices,sipsecurity,sipprogrammingfromALTANAIBISHT
References:
RFC3261SIPRFC4566SDPhttps://tools.ietf.org/html/rfc4566RFC6141UpdatestheRFC3261withrespecttore-INVITEandUASbehaviourhttps://tools.ietf.org/html/rfc6141Techinvote:https://www.tech-invite.com/fo-abnf/tinv-fo-abnf-sipuriup.html
SIPVoIPsystemarchitecture basicsJuly13,2013In"SIP"SIP(SessionInitiationProtocol )July13,2013In"SIP"HostedIP-PBXand SBCMarch5,2019In"TelecomInfo"SessionBordercontrollerfor WebRTCAugust2,2016In"WebRTCSaaS"KamailioDNSand NATFebruary2,2019In"Kamailio"OpensipsJune6,2018In"Opensips"
Searchfor:
Categories
AccessandPhysicalLayer(7)
AuxiliaryTechnologiesforVoIP(7)
MOSandCallQuality(1)
NaturalLanguageProcessing(NLP)(1)
InternetofThings(7)
BluetoothLowEnergy(1)
Raspberrypi(2)
RFID(1)
Robotics(3)
MediaProcesses(15)
codecs(1)
gstreamer(1)
LiveStreamingandBroadcasting(10)
VideoAnalytics(1)
WowzaMediaServer(2)
Protocols(6)
XMPP(2)
SessionInitiationProtocol(SIP)Frameworks(40)
JAINSLEE(3)
RCS(3)
SIP(8)
SIPservers(25)
asterisk(1)
freeswitch(5)
Kamailio(11)
Opensips(3)
OracleSIPserver(1)
SIPServlets(1)
Signals(2)
TelecomArchitectures(34)
cloudtelephony(2)
DataPrivacyandSIPsecurityinVoiceoverIP(5)
IPMultimediaSubsystem(9)
Legacytelecom(3)
ServiceBroker(4)
SIPmonitoringandNotification(1)
TelecomInfo(8)
VPN(1)
WebRealTimeComm.(WEBRTC)(36)
AugmentedReality(2)
STUNandTURN(2)
TangoFX(OpenSourceConferencingServer)-Archived(3)
WebRTCMediaStack(6)
WebRTCSaaS(5)
WebRTCsecurity(2)
WebRTCstandards(10)
WebRTCusercasesandservice(6)
Join568otherfollowers
EmailAddress:
Follow
WebRTCIntegrator’sGuideTopPosts&Pages
VOIPCallMetricMonitoringandMOS(MeanOpinionScore)
SIPandSDPMessagesExplained
KamailioWebRTCSIPServer
SessionInitiationProtocol(SIP)ServiceCreation…
GStreamer-1.8.1rtspserverandclientonubuntu
RTPengineonkamailioSIPserver
sipP(SIPtestingtool)
WebRTCAudio/VideoCodecs
KamailioasInbound/OutboundproxyorSessionBorderController(SBC)
IMSinEPC(EvolvedPacketCore)
altanai
SpecializedinCPaaS,carrier-gradeWebRTC-SIPtelecomplatformsforUnifiedcommunication-collaboration,signalinggateways,SBC,softturrets,IoT-surveillanceandtelecomintegrations.
ArdentcontributortoOpenSourcesoftware,avidfreelancer,innovatorandtechnicalwriter(telecom.altanai.com).
Inventorof"RamuDroid"anIOTRoad-Cleaningrobot
Authorofbook"WebRTCIntegrator'sGuide"publishedbyPackt
PersonalLinks
TelecomResearchandDevelopment
ComputerScienceandEngineering
RenewableEnergyTechbyAltanai
CV
github
Ramudroid
GoogleScholar
VerifiedServices
ViewFullProfile→
Tags2G
3G
4G
Applicationprogramminginterface
Applicationserver
Arduino
asterisk
beaweblogic
brekeke
calea
Callrouting
Communicationsprotocol
CSP
eclipse
FFMpeg
freeswitch
gsm
GSMA
H264
HTTPREST
ICE
identitymanagement
IM
IMS
IN
Instantmessaging
IntelligentNetwork
IOT
IPaddress
IPMultimediaSubsystem
Jainslee
Java
JavaScript
JSLEE
Kamailio
kapanga
LTE
MCU
Mediaserver
medistream
NAT
OTT
pstn
ramudroid
raspberrypi
RCS
Real-timecommunication
Real-timeTransportProtocol
regulatoryconstrainswithwebrtc
RTC
RTCP
RTMP
RTP
RTPengine
SBC
sdp
Security
Service-orientedarchitecture
servicebroker
Serviceharmonization
SessionBorderController
SessionInitiationProtocol
Sip
sipinvite
sipserver
socketio
SRTP
STUN
Telecom
TelecomEvolution
Telecommunications
TelecomServiceProvider
TFX
TURN
unifiedcommunication
VOIP
WebRTC
Wowza
xlite
XMPP
CategoryCloudAccessandPhysicalLayerAugmentedRealityAuxiliaryTechnologiesforVoIPDataPrivacyandSIPsecurityinVoiceoverIPfreeswitchIPMultimediaSubsystemJAINSLEEKamailioLegacytelecomLiveStreamingandBroadcastingOpensipsProtocolsRaspberrypiRCSRoboticsServiceBrokerSignalsSIPSIPserversSTUNandTURNTangoFX(OpenSourceConferencingServer)-ArchivedTelecomArchitecturesTelecomInfoWebRTCMediaStackWebRTCSaaSWebRTCsecurityWebRTCstandardsWebRTCusercasesandserviceWowzaMediaServerXMPP
June2022
M
T
W
T
F
S
S
12345
6789101112
13141516171819
20212223242526
27282930
«Mar
RecentComments
BertHonEvolutionofvoice Commun…altanaionSIPVoIPsystemarchitecture…ReaderonSIPVoIPsystemarchitecture…VoIPdeveloperonEEP(formelyHEP)ExtensibleE…TaraEatononEvolutionofvoice Commun…PhilipStonesonUC(UnifiedCommunications)and…AnonymousonVideoCodecs–H264,H2…
FollowmeonTwitterMyTweets
RSSLinks RSS-Posts RSS-Comments
TelecomR&DFaultToleranceandErrorCorrectioninWebRTCMarch10,2022FluctuatingNetworksDynamicBandwidthestimationJitterBufferDemandforHighQualityVideoTradeoffbetweenLatencyvsQualityBettercompressionalgorithmsvsCPUcomputeFullINTRA-frameRequest(FIR)PictureLossIndication(PLI)LayeringforadaptivestreamingRedundantEncoding(RED)inMediaPacketsCongestionFeedbackLoopReduceframequalityandr[…]AEC(EchoCancellation)andAGC(GainControl)inWebRTCMarch10,2022AcousticEchoHybrid/ElectronicEchoinPSTNphonesNoiseSuppressioninWebRTCEchoCancellationWebRTCEchoCancellationAutomaticGainControl(AGC)Echoisthesoundofyourownvoicereverberating.Iftheamplitudeofsuchasoundishighandintervalsexceed25ms,itbecomesdisruptivetotheconversation.Itstypescanbe…ContinuereadingAEC(Ec[…]VoIPAPIdesignDecember22,2021PublicAPIendpointsInternalAPIgatewaysAPIRateLimiterTokenbasedRateLimitingTokenbucketfilterHierarchicalTokenBucket(HTB)FairQueingCBQ(ClassBasedQueing)ModularQoScommand-Lineinterface(MQC)ShapingThrottlingVoIPmanagesCallsetupandteardownusingIPprotocol.TheAPIscanbeusedtoprovidepublicorinternalendpoinsttocreat[…]HighavailiabilityandScalibilityinVoIPplatformsDecember22,2021LoadBalancersMPLSService-discoveryKeepalive,unregisteringunhealthynodesReplicationDataStoreReplicationQuickResponse/LowlatencyScalabilityautoscallingPartitioiningMultiplePoPs(pointofpresence)MinimalLatencyandlowestamountoftarfficviapublicinternetHighavailiability(HA)59’sinaggregatefailuresHAforLoadbalancer(LB)H[…]EEP(formelyHEP)ExtensibleEncapsulationProtocolwithHOMERSeptember19,2021EEPduplicatesandIPdatagramandencapsulatesandsendsforremoterelatimemonitoringforSIPspecificalertsandnotifications.HEPispopularamongmanySIPserversincludingFreeswitch,Opensips,kamailio,RTPengineasanexternalmodule.intendedforpassiveduplicatedforremotecollectioncanbeusedforauditstorageandanalysisdoesnotalter[…]EnergyEfficientVoIPsystemsJuly19,2021DataCentresaretheconcentratedprocessingunitsfortheamazingInternetthatisdrivingthetechnologicalinnovationofourgenerationandhasbecomethebackboneofourglobaleconomy.DataCentresnotonlyprocess,storeandcarrytextualdataratheravastamountofcomputingisformultimediacontentwhichcouldrangefromsocialmedia…Continuerea[…]WhyLuaisagoodchoiceforScriptingcallconfigurationsinSIPserverslikeKamailioandFreeswitchDecember1,2020PrograminginSIPserversenablestheIPtelephonyprovidertoaddcomplexcontrolthatisdifficulttorealisewithsimpledialplanXMLandIVRmenus.ThesearebesthandledbyusingaprogramthatiscompiledwiththetelecomapplicationserverandinvokedbySIPrequestsorresponsesinthesession.Thismayincludeusing…ContinuereadingWhyLuaisag[…]TeleMedicineandWebRTCNovember24,2020Thesolutionenablesdoctors/nurses/medicalpractitionersandpatients todoHighdefinitionAudio/videocalls Endtoendencryptedp2pchats IntegrationwithHMS(hospitalmanagementsystem)tofetchhistoryofthepatients Screenssharingtoshowreportswithouttransferringthemasfiles IncludemoreconcernedpeopleofdoctorsusingMeshbasedpee[…]
Follow
Following
TelecomR&D
Join568otherfollowers
Signmeup
AlreadyhaveaWordPress.comaccount?Loginnow.
TelecomR&D
Customize
Follow
Following
Signup
Login
Reportthiscontent
ViewsiteinReader
Managesubscriptions
Collapsethisbar