Symbian3/PDK/Source/GUID-A9640739-462C-5D95-8DCC-D273CD8439AE.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 11 Mar 2010 18:02:22 +0000
changeset 3 46218c8b8afa
parent 1 25a17d01db0c
child 5 f345bda72bc4
permissions -rw-r--r--
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     2
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     3
<!-- This component and the accompanying materials are made available under the terms of the License 
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     4
"Eclipse Public License v1.0" which accompanies this distribution, 
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     5
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     6
<!-- Initial Contributors:
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     7
    Nokia Corporation - initial contribution.
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     8
Contributors: 
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
     9
-->
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
    10
<!DOCTYPE concept
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
    11
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
    12
<concept xml:lang="en" id="GUID-A9640739-462C-5D95-8DCC-D273CD8439AE"><title>TCP/IP</title><shortdesc>This section describes the TCP/IP concepts as implemented by Symbian OS. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody><p>The TCP/IP is a plug-in architecture. Clients access its services through the generic Sockets Server Client API, and specify protocol-specific behaviour through TCP/IP specific utility types and constants. </p> <p>The TCP/IP API has the following three key concepts: </p> <ul><li id="GUID-7D1C1EC3-87D6-5C30-9671-63CDF8CDC05A"><p>TCP/IP Socket </p> </li> <li id="GUID-1412D36F-1834-56E7-A904-8C5577BFD841"><p>Domain Name Resolver </p> </li> <li id="GUID-A2A04887-0E9E-5A94-BD78-CAD2CB720343"><p>Internet Addresses </p> </li> </ul> <section><title>TCP/IP Socket</title> <p>The TCP/IP protocol module (tcpip.prt) provides TCP/IP communication services to client applications. This module provides the following four fundamental transport and network layer protocols: </p> <ul><li id="GUID-4EE43C12-9065-5B5A-8DA1-C1D299408E41"><p>Internet Protocol (IP) <xref scope="external" href="http://www.ietf.org/rfc/rfc791.txt">RFC791</xref>  </p> </li> <li id="GUID-8219260F-D83C-575B-B92B-A9FF30E06100"><p>Internet Control Message Protocol (ICMP) <xref scope="external" href="http://www.ietf.org/rfc/rfc792.txt">RFC792</xref> and <xref scope="external" href="http://www.ietf.org/rfc/rfc950.txt">RFC950</xref>  </p> </li> <li id="GUID-18E9FDB7-EB17-5DEB-B075-6840F72B9F11"><p>Transmission Control Protocol (TCP) <xref scope="external" href="http://www.ietf.org/rfc/rfc793.txt">RFC793</xref>  </p> </li> <li id="GUID-509BB14D-7EF9-5768-A992-4A08B23204A5"><p>User Datagram Protocol (UDP) <xref scope="external" href="http://www.ietf.org/rfc/rfc768.txt">RFC768</xref>  </p> </li> </ul> <p>Clients do not access the protocol module directly. Clients use the protocol module through the Sockets Server Client API. The module also provides a DNS service that can be accessed through the Sockets Server Client API standard host name resolution interface, <xref href="GUID-5442E589-1BFB-39A0-98B3-3744E51F8386.dita"><apiname>RHostResolver()</apiname></xref>. Socket services are provided through the generic interface <xref href="GUID-66497E39-6A48-3B2C-BE17-5826210505AB.dita"><apiname>RSocket()</apiname></xref>. It is possible for TCP/IP services to be used over many types of network interface. To enable access to TCP/IP networks through a dial-up serial connection, Point-to-Point protocol (PPP) is provided. </p> </section> <section><title>Domain Name Resolver</title> <p>Domain name resolver is a program that extracts the information from name servers in response to client requests. The domain name resolution service uses the normal sockets API, for example, UDP and TCP to communicate with the name servers. Resolvers must access at least one name server and uses its information to answer a query directly. A resolver is a system procedure that is accessible to the user programs, for example, mail programs, TELNET and FTP. This indicates that the protocol is not required between the resolver and the user programs. </p> <p>A very important goal of the resolver is to eliminate the network delay and the load on the name server. </p> </section> <section><title>Internet Addresses</title> <p>The TCP/IP program uses a socket address encapsulated in a <codeph>TInetAddr</codeph> object. The <codeph>TInetAddr</codeph> object stores the IP address and port of a socket. This is the expected form for passing address information when using <codeph>RSocket()</codeph> and <codeph>RHostResolver()</codeph> for TCP/IP. </p> <p>The TCP/IP program also handles IP addresses represented in the following formats: </p> <ul><li id="GUID-0310B249-26DE-53E6-AA50-BEE114EA6E53"><p>As a dotted-decimal string, For example, 194.129.2.54 stored in a descriptor. </p> </li> <li id="GUID-D5BCC6F8-954D-564C-B9D6-032FED950F8F"><p>As an unsigned 32-bit integer - the usual binary representation of an IP address. This can be used to initialise a <codeph>TInetAddr</codeph> through the relevant constructor. </p> </li> <li id="GUID-C683FEEC-C3F5-5542-8AAA-2E1A76F3E1C5"><p>The 4 integers forms a dotted-decimal address and the macro INET_ADDR is used to convert this into integer format in the appropriate byte-order. </p> </li> </ul> <p> <b>Note:</b> All addresses are handled in the native byte order. It means the user do not need to use byte-order conversion functions, for example, BSD’s <xref href="GUID-1E24E920-D34A-38D4-98B1-6AE44B98113C.dita"><apiname>htonl()</apiname></xref> or <xref href="GUID-013170BC-E395-3887-8EE1-BBDBE5AD8C31.dita"><apiname>htons()</apiname></xref>. </p> </section> <section><title>Routes and Interfaces</title> <p>The TCP/IP protocol must establish the following information to communicate with a remote host through a socket: </p> <ul><li id="GUID-F9ABF503-6687-5B87-A082-C0844A36C0E6"><p>the IP address and port of the socket </p> </li> <li id="GUID-D3423B61-CBE1-58A4-83EF-9AD18BB018EE"><p>a route to the remote host </p> </li> <li id="GUID-85BA7CE9-93E0-58A7-A9D1-5E15FBF523FF"><p>a network interface by which to access that route </p> </li> </ul> <p>The actions to do this are performed when: </p> <ul><li id="GUID-FA6AD28F-3EC9-5429-B5DE-CAEAF1633CDA"><p>A TCP socket is connected with <xref href="GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0.dita#GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0/GUID-AC5A49E9-337D-334A-9CD0-DB8226372306"><apiname>RSocket::Connect()</apiname></xref>  </p> </li> <li id="GUID-02FA2CD0-AD09-5E9F-AF10-6018AA9D6001"><p>a UDP socket is written to with <xref href="GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0.dita#GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0/GUID-ADE2383D-3075-30B4-8F63-6D837EB75AEF"><apiname>RSocket::Send()</apiname></xref>, <xref href="GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0.dita#GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0/GUID-29825F33-D844-358A-8CCA-791AE167CDCE"><apiname>RSocket::Write()</apiname></xref> or <xref href="GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0.dita#GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0/GUID-F948E0A6-DC1A-3FCD-A391-0FEE0F673D36"><apiname>RSocket::SendTo()</apiname></xref>  </p> </li> <li id="GUID-53FC4772-8A69-5514-A3F1-48E0FF1CC305"><p>A UDP socket is connected with <xref href="GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0.dita#GUID-D4F08503-F1EF-3531-9C3C-4AF24A6255F0/GUID-AC5A49E9-337D-334A-9CD0-DB8226372306"><apiname>RSocket::Connect()</apiname></xref>  </p> </li> </ul> </section> </conbody><related-links><link href="GUID-B8DEA3EE-7BA7-5A29-9A27-B87EE0EB254F.dita"><linktext>Accessing TCP/IP Sockets</linktext> </link> <link href="GUID-182A7A60-80BD-5E54-917A-8F4C26BB94CB.dita"><linktext> Connecting and
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
    13
                Disconnecting a remote host</linktext> </link> <link href="GUID-3AAE78A4-75C5-5607-8775-43DFB43DCFE8.dita"><linktext> Getting and Setting IP
46218c8b8afa week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents: 1
diff changeset
    14
                Addresses</linktext> </link> <link href="GUID-95C166C3-2A25-55FB-88BD-62B7EFED2F8E.dita"><linktext> Using Domain Name
1
25a17d01db0c Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    15
                Resolution</linktext> </link> </related-links></concept>