def get_all_subnets(self, subnet_ids=None, filters=None):
        """
        Retrieve information about your Subnets.  You can filter results to
        return information only about those Subnets that match your search
        parameters.  Otherwise, all Subnets associated with your account
        are returned.

        :type subnet_ids: list
        :param subnet_ids: A list of strings with the desired Subnet ID's

        :type filters: list of tuples
        :param filters: A list of tuples containing filters.  Each tuple
                        consists of a filter key and a filter value.
                        Possible filter keys are:

                        - *state*, the state of the Subnet
                          (pending,available)
                        - *vpdId*, the ID of teh VPC the subnet is in.
                        - *cidrBlock*, CIDR block of the subnet
                        - *availabilityZone*, the Availability Zone
                          the subnet is in.


        :rtype: list
        :return: A list of :class:`boto.vpc.subnet.Subnet`
        """
        params = {}
        if subnet_ids:
            self.build_list_params(params, subnet_ids, 'SubnetId')
        if filters:
            i = 1
            for filter in filters:
                params[('Filter.%d.Name' % i)] = filter[0]
                params[('Filter.%d.Value.1' % i)] = filter[1]
                i += 1
        return self.get_list('DescribeSubnets', params, [('item', Subnet)])