integrating user-space drivers and Intel WiMAX network service

Inaky Perez-Gonzalez inaky.perez-gonzalez at intel.com
Thu Feb 25 10:37:47 PST 2010


On Sat, 2010-02-13 at 05:18 -0800, Alexander Gordeev wrote: 
> Sorry for the delay...

I'll join you there, got my brain split in many different areas now...

> В Tue, 09 Feb 2010 13:49:53 -0800
> Inaky Perez-Gonzalez <inaky.perez-gonzalez at intel.com> пишет:
> 
> > 
> > Can you give an outline of the HCI of the device? We need to design a
> > new kernel API for managing NSP-based devices then. The one I have in
> > the op_nap_scan branchs is for NAP-level devices.
> 
> Well, it sends and receives data through two bulk pipes. Sending and
> receiving data is asynchronous. I.e. one can send n request and then
> receive n responses. Requests and responses look like this most of the
> time: header, major number, minor number, data length, data. Response
> always has the same major number as the request and minor number is
> requests minor + 1. So you don't have to keep requests to analyze
> responses.
> 
> Initially my driver reads some valuable info like MAC-address, chip and
> firmware info, authentication method (this means in fact two values:
> auth policy = 0x22 and auth method = 2 - and I don't know what these

Could be EAP official methods...no, they look to weird (22 is not RFC
registered, 2 is EAP_NOTIFICATION). Magic :/

> values mean). Than it sets SSID to connect to (@yota.ru usually) and

Oh, so that's the authentication realm; it's used in a more extensive
way as an SSID. The true "equivalent" off SSID in WiMAX would be the
NAP-ID, and then each NAP provides service for one or more
authentication realms (VNOs), yota.ru in this case.

> tries to connect. When it passes states SYNC->NEGO->NORMAL the
> associated tap interface is enabled and you can start to send packets.
> 
> Packets look like this: header, full Ethernet frame. One packet always
> goes in one bulk transfer.
> 
> Of course, this is not a full description. There are other small
> details.

I guess from the generic API point of view I am more interested on how
can we map the high level operations, which are:


scan() -> { list of NAPs / VNOs }
rfkill()
connect(NAP, EAP auth data)
disconnect()

then the interactions with the authentication agent; standard-wised, the
VNO selection is done once we connect to a NAP and when EAP is started
and we say our NAI (myuserid at REALM). However, in your HW it seems it
takes that before hand.








More information about the wimax mailing list