Presentation is loading. Please wait.

Presentation is loading. Please wait.

IOS Networking CS328. Big Picture Core Foundation Networking CF Networking APIs are abstractions on top of the BSD sockets to make it easier to program.

Similar presentations


Presentation on theme: "IOS Networking CS328. Big Picture Core Foundation Networking CF Networking APIs are abstractions on top of the BSD sockets to make it easier to program."— Presentation transcript:

1 iOS Networking CS328

2 Big Picture

3 Core Foundation Networking CF Networking APIs are abstractions on top of the BSD sockets to make it easier to program network protocols. – working with BSD sockets – Creating and using SSL and TLS – Resolving DNS host requests – Working with HTTP – Working with FTP – Publishing, resolving and browsing Bonjour services

4 CF Network Concepts Low level, high performance framework to give detailed control over the protocol stack An extension of BSD sockets

5 CFSocket and CFStream CFSocket and CFStream are fundamental to CFNetwork First we’ll look at both before looking at CFNetwork

6 CFSocket Most basic level of network communication Uses BSD Socket but the abstraction allows the CFSocket to be integrated with a program run-loop. Can also be used for UDP sockets.

7 CFSocket CFSocketCreate – makes a CFSocket from scratch CFSocketCreateWithNative – Create a CFSocket out of a BSD socket CFSocketCreateRunLoopSource – Create a CFSocket to use in a program run loop. CFSocket Reference

8 CFStream Provides the abstraction to read and write information from one socket on the local machine and another on a remote machine (could also be on the local machine). Streams can be attached to memory, files or sockets/network CFReadStream CFWriteStream

9 The Framework

10 Using Use in the same way as a UNIX stream Create the stream (instantiate it) Open it Read or write it. Close/Dispose of CFStream Reference

11 Other CFNetwork APIs CFFTP – create read/write streams for uploading and downloading files from FTP servers. This implements the FTP protocol CFHTTP - create read/write streams for sending HTTP Requests and receiving HTTP Response packets. This implements the HTTP protocol

12 CFHTTPAuthentication – provides for interfacing with an HTTP server set up for challenge/response authentication. CFHost – Lets you query host information from DNS. CFNetServices – Interface to Bonjour.

13 Bonjour Bonjour is Apple Inc.'s trade name for its implementation of Zeroconf, a group of technologies that includes service discovery, address assignment, and name resolution. Bonjour locates devices such as printers, other computers, and the services that those devices offer on a local network using multicast Domain Name System (mDNS) service records.Apple Inc.trade nameZeroconfservice discoverylocal network multicastDomain Name SystemmDNS

14 Zeroconf Zero configuration networking (zeroconf), is a set of techniques that automatically creates a usable Internet Protocol (IP) network without manual operator intervention or special configuration servers.Internet Protocol


Download ppt "IOS Networking CS328. Big Picture Core Foundation Networking CF Networking APIs are abstractions on top of the BSD sockets to make it easier to program."

Similar presentations


Ads by Google