置種子數(shù)(配置種子數(shù)可被表征為“配置計(jì)數(shù)器”并且每次附件設(shè)備102中的配置改變時(shí)可由附件設(shè)備102更新)。
[0031]附件設(shè)備102還可實(shí)現(xiàn)超文本傳輸協(xié)議(HTTP)服務(wù)器。在此實(shí)例中,當(dāng)HTTP服務(wù)器在附件設(shè)備102上運(yùn)行時(shí),控制器設(shè)備100和附件設(shè)備102可使用HTTP消息通信(例如,HTTP POST消息、HTTP GET消息等等),其中控制器設(shè)備100充當(dāng)HTTP客戶(hù)端。
[0032]盡管控制器設(shè)備100在本文中被稱(chēng)為“控制器”以及盡管附件設(shè)備102被稱(chēng)為“附件”,這些術(shù)語(yǔ)僅僅為了便于描述而使用并且不應(yīng)當(dāng)理解為限制性的,本文所述的由控制器設(shè)備100和/或附件設(shè)備102執(zhí)行的特征結(jié)構(gòu)可由任何類(lèi)型的無(wú)線(xiàn)設(shè)備執(zhí)行。
[0033]圖2-用于配置附件設(shè)備的示例方法
[0034]圖2示出可被執(zhí)行以配置附件設(shè)備102的操作的一些屬性和/或方面的示例方法。
[0035]在圖2的方法開(kāi)始時(shí),控制器設(shè)備100可被連接到(或可在過(guò)去已經(jīng)連接到)由接入點(diǎn)104提供的無(wú)線(xiàn)網(wǎng)絡(luò)??刂破髟O(shè)備100可存儲(chǔ)有關(guān)無(wú)線(xiàn)網(wǎng)絡(luò)的信息,諸如用于訪(fǎng)問(wèn)無(wú)線(xiàn)網(wǎng)絡(luò)的憑證(例如,密碼),可標(biāo)識(shí)無(wú)線(xiàn)網(wǎng)絡(luò)的信息(諸如無(wú)線(xiàn)網(wǎng)絡(luò)的服務(wù)集標(biāo)識(shí)符(SSID))和/或其他信息。
[0036]在框200處,控制器設(shè)備100可接收來(lái)自附件設(shè)備102的信息并且確定該附件設(shè)備102可用于配置。作為可如何執(zhí)行該處的一個(gè)示例,附件設(shè)備102可充當(dāng)接入點(diǎn)并且可傳輸信標(biāo)消息(或其他消息),該信標(biāo)消息包括當(dāng)由控制器設(shè)備100處理時(shí)向控制器設(shè)備100指示附件設(shè)備102可用于配置的信息。信標(biāo)消息(或其他消息)可包括諸如附件設(shè)備102的設(shè)備標(biāo)識(shí)符的信息(例如,MAC地址,或其他類(lèi)型的唯一標(biāo)識(shí)符)。
[0037]在框202處,控制器設(shè)備100可在圖形用戶(hù)界面中顯示指示附件設(shè)備102可用于配置的信息??刂破髟O(shè)備100可從控制器設(shè)備100的用戶(hù)接收指示附件設(shè)備102應(yīng)當(dāng)被配置的用戶(hù)輸入??刂破髟O(shè)備100還可接收指示附件設(shè)備102的配置參數(shù)的用戶(hù)輸入,諸如附件設(shè)備102的名稱(chēng)、附件設(shè)備102的系統(tǒng)管理密碼等等。
[0038]在框204處,控制器設(shè)備100可建立到附件設(shè)備102的連接。在附件設(shè)備102充當(dāng)接入點(diǎn)的實(shí)例中,這可包括控制器設(shè)備100加入由附件設(shè)備102提供的無(wú)線(xiàn)網(wǎng)絡(luò)。一旦連接到附件設(shè)備102,控制器設(shè)備100可接收來(lái)自附件設(shè)備102的信息,諸如配置計(jì)數(shù)器(“配置種子”數(shù))和設(shè)備標(biāo)識(shí)符??刂破髟O(shè)備100可驗(yàn)證設(shè)備標(biāo)識(shí)符(例如,其可是MAC地址)與在框200處接收到的設(shè)備標(biāo)識(shí)符相同。如果控制器設(shè)備100確定設(shè)備標(biāo)識(shí)符是相同的,則控制器設(shè)備100可然后發(fā)起與附件設(shè)備102的認(rèn)證過(guò)程,以建立到附件設(shè)備102的加密的鏈路。
[0039]在框206處,控制器設(shè)備100可通過(guò)該加密的鏈路向附件設(shè)備102傳輸配置信息。該配置信息可包括有關(guān)由接入點(diǎn)104提供的無(wú)線(xiàn)網(wǎng)絡(luò)的信息(諸如,憑證(例如,密碼)和該網(wǎng)絡(luò)的標(biāo)識(shí)符),和/或在框202處通過(guò)用戶(hù)輸入接收的其他信息。
[0040]在框208處,附件設(shè)備102可使用在框206處接收的配置信息來(lái)更新其配置。另夕卜,控制器設(shè)備100和附件設(shè)備102可同時(shí)移動(dòng)到由接入點(diǎn)104提供的無(wú)線(xiàn)網(wǎng)絡(luò),使用上述在框206處被傳輸?shù)礁郊O(shè)備102的憑證。這還可包括附件設(shè)備102更新其配置計(jì)數(shù)器/配置種子數(shù)(通過(guò)遞增和/或以其他方式改變其值),和/或附件設(shè)備102更新所存儲(chǔ)的配置狀態(tài)信息以反映附件設(shè)備102已經(jīng)被配置。
[0041]在框210處,附件設(shè)備102和控制器設(shè)備100 二者連接到由接入點(diǎn)104提供的無(wú)線(xiàn)網(wǎng)絡(luò),并且附件設(shè)備102可通過(guò)由接入點(diǎn)104提供的無(wú)線(xiàn)網(wǎng)絡(luò)將信息傳輸?shù)娇刂破髟O(shè)備100。該信息可包括遞增的/改變的配置計(jì)數(shù)器/配置種子數(shù)、附件設(shè)備102的MAC地址和附件設(shè)備102的配置狀態(tài)信息??刂破髟O(shè)備100可驗(yàn)證所接收的信息,驗(yàn)證所接收的信息可包括確定配置計(jì)數(shù)器/配置種子數(shù)的值是否已經(jīng)遞增/改變(相比在框204處所接收的其值),確定設(shè)備標(biāo)識(shí)符是否與先前(在框204和框200處)所接收的相同,以及確定配置狀態(tài)信息指示附件設(shè)備102已經(jīng)被配置。如果控制器設(shè)備100證實(shí)配置計(jì)數(shù)器已經(jīng)遞增/改變,設(shè)備標(biāo)識(shí)符與先前已經(jīng)接收的相同、并且配置狀態(tài)信息指示附件設(shè)備102已經(jīng)被配置102,則控制器設(shè)備100可確定附件設(shè)備102的配置已經(jīng)成功。然后,附件設(shè)備102可在由接入點(diǎn)104提供的無(wú)線(xiàn)網(wǎng)絡(luò)上向控制器設(shè)備100和/或可連接到該無(wú)線(xiàn)網(wǎng)絡(luò)的其他設(shè)備傳達(dá)數(shù)據(jù)、或者傳達(dá)來(lái)自控制器設(shè)備100和/或可連接到該無(wú)線(xiàn)網(wǎng)絡(luò)的其他設(shè)備的數(shù)據(jù)。
[0042]圖3A/圖3B-用于配置附件設(shè)備的方法
[0043]圖3A/圖3B示出可視為上述圖2的方法的更加具體的版本的方法。在下面的描述中,將描述控制器設(shè)備100和附件設(shè)備102實(shí)現(xiàn)Bonjour ;然而,這是為了便于說(shuō)明進(jìn)行,并且應(yīng)當(dāng)理解的是,在不同的實(shí)施方式中,可使用任何其他合適的一個(gè)和多個(gè)服務(wù)發(fā)現(xiàn)協(xié)議。
[0044]如圖3A所示,在框300處,控制器設(shè)備100可連接到接入點(diǎn)104。這可包括例如控制器設(shè)備100和接入點(diǎn)104執(zhí)行W1-Fi關(guān)聯(lián)程序,和/或可包括使用例如WPA2認(rèn)證來(lái)認(rèn)證控制器設(shè)備100???00可包括通過(guò)來(lái)自控制器設(shè)備100的用戶(hù)的用戶(hù)輸入來(lái)接收密碼的控制器設(shè)備100,并且可包括控制器設(shè)備100將該密碼傳輸?shù)浇尤朦c(diǎn)104作為認(rèn)證過(guò)程的一部分??刂破髟O(shè)備100可存儲(chǔ)有關(guān)接入點(diǎn)104的信息,包括但不限于接入點(diǎn)104的SSID、用于連接到接入點(diǎn)的密碼和/或其他信息。
[0045]在框302處,附件設(shè)備102可被配置為充當(dāng)接入點(diǎn)(或“軟接入點(diǎn)”),和/或以其他方式實(shí)現(xiàn)IEEE 802.11基礎(chǔ)設(shè)施模式接入點(diǎn)功能性(或其某個(gè)子集)。這可包括附件設(shè)備102提供W1-Fi網(wǎng)絡(luò)并且周期性地發(fā)送信標(biāo)消息以通告其W1-Fi網(wǎng)絡(luò)。由附件設(shè)備102傳輸?shù)男艠?biāo)消息可包括一個(gè)或多個(gè)信息元素(IE),該一個(gè)或多個(gè)信息元素指示諸如以下的信息:附件設(shè)備102的名稱(chēng)(或“友好名稱(chēng)”);附件設(shè)備102的制造商的名稱(chēng)(例如,“AppleInc.,,);附件設(shè)備102的型號(hào)的名稱(chēng)(例如,“Speaker System 9000”);附件設(shè)備102的機(jī)構(gòu)唯一標(biāo)識(shí)符(0UI);設(shè)備標(biāo)識(shí)符(或“設(shè)備ID”),其可為附件設(shè)備102的MAC地址;附件設(shè)備102是否支持AirPlay (和/或類(lèi)似的技術(shù));附件設(shè)備102是否配置還是“未配置”;附件設(shè)備102是否支持一個(gè)或多個(gè)配置協(xié)議(諸如Made For iPhone/iPod/iPad (MFi)Configurat1n vl 和 / 或Associat1n Control Protocol(ACP)Configurat1n vl);和 /或有關(guān)附件設(shè)備102的其他信息。上述信息可被包括在信標(biāo)消息中的一個(gè)或多個(gè)供應(yīng)商特定的IE中和/或由附件設(shè)備102廣播的信標(biāo)消息中的其他IE中。
[0046]控制器設(shè)備100可接收由附件設(shè)備102所發(fā)送的一個(gè)或多個(gè)信標(biāo)消息,和/或以其他方式發(fā)現(xiàn)附件設(shè)備102。控制器設(shè)備100可存儲(chǔ)信標(biāo)消息中所指示的信息,包括附件設(shè)備102的設(shè)備標(biāo)識(shí)符(其可是MAC地址)和上述的其他信息?;诒话ㄔ谛艠?biāo)消息中的信息(特別地,該信息指示附件設(shè)備102是否被配置/ “未配置”和/或該信息指示附件設(shè)備102是否實(shí)現(xiàn)一種或多種配置協(xié)議,諸如MFi配置vl),控制器設(shè)備100可確定附件設(shè)備102處于其中它是可配置的狀態(tài)和/或控制器設(shè)備100應(yīng)當(dāng)嘗試配置附件設(shè)備102。
[0047]在框304處,響應(yīng)于確定附件設(shè)備102處于其中它是可配置的狀態(tài)和/或控制器設(shè)備100應(yīng)當(dāng)嘗試配置附件設(shè)備102,控制器設(shè)備100可在圖形用戶(hù)界面上(例如,在控制器設(shè)備100的顯示器上)顯示有關(guān)附件設(shè)備102的信息。該信息可指示附件設(shè)備102的名稱(chēng)、附件設(shè)備102當(dāng)前是否可配置和/或是否已經(jīng)發(fā)現(xiàn)、附件設(shè)備102的SSID和/或有關(guān)附件設(shè)備102的其他信息??刂破髟O(shè)備100可接收響應(yīng)于所顯示的信息以及指示應(yīng)當(dāng)采取行動(dòng)來(lái)配置附件設(shè)備102的用戶(hù)輸入。
[0048]在框306處,響應(yīng)于指示應(yīng)當(dāng)采取行動(dòng)來(lái)配置附件設(shè)備102的用戶(hù)輸入,控制器設(shè)備100可從接入點(diǎn)104斷開(kāi)。這可包括控制器設(shè)備100執(zhí)行與接入點(diǎn)104的離解過(guò)程和/或以其他方式從接入點(diǎn)斷開(kāi)。如先前所提及的,控制器設(shè)備100可存儲(chǔ)有關(guān)接入點(diǎn)的信息,諸如用于連接到接入點(diǎn)104的密碼和由接入點(diǎn)使用的SSID ;這里,即使控制器設(shè)備100正在從接入點(diǎn)104斷開(kāi),控制器設(shè)備100可繼續(xù)存儲(chǔ)上述有關(guān)接入點(diǎn)104的信息。
[0049]在框308處,控制器設(shè)備100和附件設(shè)備102可建立無(wú)線(xiàn)連接(即控制器設(shè)備100可執(zhí)行W1-Fi關(guān)聯(lián)過(guò)程以關(guān)聯(lián)到附件設(shè)備102),以建立控制器設(shè)備100和附件設(shè)備102之間的物理層和數(shù)據(jù)鏈路層連接。
[0050]在無(wú)線(xiàn)連接建立之后,控制器設(shè)備100和附件設(shè)備102可執(zhí)行Bonjour服務(wù)發(fā)現(xiàn)過(guò)程,以便控制器設(shè)備100連接到由附件設(shè)備102實(shí)現(xiàn)的配置服務(wù)。這可包括控制器設(shè)備100和附件設(shè)備102交換一個(gè)或多個(gè)DNS-SD/mDNS消息。另選地或除此之外,這可按以下來(lái)執(zhí)行:
[0051 ] (a)控制器設(shè)備100可發(fā)送DNS-SD/mDNS查詢(xún)消息(具有PTR的查詢(xún)類(lèi)型)用以請(qǐng)求有關(guān)由附件設(shè)備102實(shí)現(xiàn)的配置服務(wù)的信息;在其中該服務(wù)是MFi配置服務(wù)的示例中,DNS-SD/mDNS查詢(xún)消息中的問(wèn)題輸入字段中的查詢(xún)域名名稱(chēng)(QNAME)字段可包括諸如mf1-config._tcp” 或 “_airplay._tcp” 的文本。
[0052](b)響應(yīng)于該查詢(xún)消息,附件設(shè)備102可發(fā)送DNS-SD/mDNS查詢(xún)應(yīng)答消息,該DNS-SD/mDNS查詢(xún)應(yīng)答消息帶有指向SRV資源記錄的信息,該SRV資源記錄描述與初始查詢(xún)消息中所查詢(xún)的服務(wù)相匹配的由附件設(shè)備102實(shí)現(xiàn)的服務(wù);在其中附件設(shè)備102具有名稱(chēng)“AccessoryA”并且支持MFi配置的示例中,查詢(xún)應(yīng)答消息可為PTR類(lèi)型并且可包括RDATA字段,該RDATA字段包括諸如“AccessoryA._mf1-config._tcp.local, ”的文本,從而該查詢(xún)應(yīng)答消息指向由附件設(shè)備102存儲(chǔ)的名稱(chēng)為“AccessoryA._mfi_config._tcp.local”的SRV資源記錄。
[0053](c)響應(yīng)于該查詢(xún)應(yīng)答消息,附件設(shè)備102可發(fā)送一個(gè)或多個(gè)另外的DNS-SD/mDNS查詢(xún)消息以獲取上述的SRV資源記錄和/或與該SRV資源記錄相關(guān)聯(lián)的DNS TXT資源記錄。
[0054](d)響應(yīng)于來(lái)自步驟(c)的一個(gè)或多個(gè)查詢(xún)消息,附件設(shè)備102可發(fā)送DNS-SD/