Please Help: a solution for SSL VPN based on NDIS-IM

Hi, guys
I want to implement the solution as the fellow,
client1–| |-Srv1
|—internet—firewall(443)—SSL VPN server—|-Srv2
client2–| |-Srv3
When the client application startup, the client establishs a SSL connection with
the SSL VPN server. When IM send package to Srv(internal IPs), it puts those package to
a queue, local application read from the driver, encrypt and send to the SSL VPN server.
When the client recieves the package from the SSL VPN Server, the application write those
data to the IM driver.

About OpenVPN, it realizes a vitural NIC, through the NIC, client could access the SSLVPN
internal Servers.
My questions are:

  1. If I does not use the virtual NIC, could I realize this function (include IP(TCP, UDP, ICMP)/ARP)?
    If could, how can I do? Could you give me a generial illumination?

  2. If I must implement a virtual NIC, I have some problems: a. about the sslvpn server, how do I
    implement the one server-multi clients? b. what is the main working mechanism difference between
    the IM driver and the virtual NIC driver? I only know their miniport functions registrations are
    different.

Thanks!
Best Regards
Ouyang Kai